gcc/analyzer/ChangeLog:
* engine.cc (supernode_cluster::dump_dot): Show the SCC id
in the per-supernode clusters in FILENAME.eg.dot output.
(exploded_graph_annotator::add_node_annotations):
Show the SCC of the supernode in FILENAME.supernode.eg.dot output.
* exploded-graph.h (worklist::scc_id): New.
(exploded_graph::get_scc_id): New.
(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;
gv->begin_td ();
pp_string (pp, "BEFORE");
+ pp_printf (pp, " (scc: %i)", m_eg.get_scc_id (n));
gv->end_td ();
unsigned i;
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
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;