diff options
-rw-r--r-- | gcc/analyzer/engine.cc | 6 | ||||
-rw-r--r-- | gcc/analyzer/exploded-graph.h | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/analyzer/engine.cc b/gcc/analyzer/engine.cc index 53fafb5..637a990 100644 --- a/gcc/analyzer/engine.cc +++ b/gcc/analyzer/engine.cc @@ -3288,8 +3288,9 @@ public: (const void *)this); gv->indent (); gv->println ("style=\"dashed\";"); - gv->println ("label=\"SN: %i (bb: %i)\";", - m_supernode->m_index, m_supernode->m_bb->index); + gv->println ("label=\"SN: %i (bb: %i; scc: %i)\";", + m_supernode->m_index, m_supernode->m_bb->index, + args.m_eg.get_scc_id (*m_supernode)); int i; exploded_node *enode; @@ -4040,6 +4041,7 @@ public: gv->begin_td (); pp_string (pp, "BEFORE"); + pp_printf (pp, " (scc: %i)", m_eg.get_scc_id (n)); gv->end_td (); unsigned i; diff --git a/gcc/analyzer/exploded-graph.h b/gcc/analyzer/exploded-graph.h index 5d4c319..04e878f 100644 --- a/gcc/analyzer/exploded-graph.h +++ b/gcc/analyzer/exploded-graph.h @@ -652,6 +652,10 @@ public: exploded_node *take_next (); exploded_node *peek_next (); void add_node (exploded_node *enode); + int get_scc_id (const supernode &snode) const + { + return m_scc.get_scc_id (snode.m_index); + } private: class key_t @@ -783,6 +787,11 @@ public: const call_string_data_map_t *get_per_call_string_data () const { return &m_per_call_string_data; } + int get_scc_id (const supernode &node) const + { + return m_worklist.get_scc_id (node); + } + private: void print_bar_charts (pretty_printer *pp) const; |