When using lto-dump -callgraph with two or more .o files containing distinct
functions with the same name, dump_graphviz incorrectly merged those functions
into a single node. This patch fixes this issue by calling `dump_name` instead
of `name`, therefore concat'ing the function name with the node's id.
To understeand what was the issue, let's say you have two files:
a.c: static void foo (void) { do_something (); }
b.c: static void foo (void) { do_something_else (); }
These are distinct functions and should be represented as distinct nodes in the
callgraph dump.
2019-10-22 Giuliano Belinassi <giuliano.belinassi@usp.br>
* cgraph.c (dump_graphviz): Change name to dump_name
From-SVN: r277299
+2019-10-22 Giuliano Belinassi <giuliano.belinassi@usp.br>
+
+ * cgraph.c (dump_graphviz): Change name to dump_name
+
2019-10-22 Richard Earnshaw <rearnsha@arm.com>
* config/arm/arm.md (rsbsi_carryin_reg): New pattern.
{
cgraph_node *callee = edge->callee;
- fprintf (f, "\t\"%s\" -> \"%s\"\n", name (), callee->name ());
+ fprintf (f, "\t\"%s\" -> \"%s\"\n", dump_name (), callee->dump_name ());
}
}