aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.c
diff options
context:
space:
mode:
authorGiuliano Belinassi <giuliano.belinassi@usp.br>2019-10-22 19:05:49 +0000
committerGiuliano Belinassi <giulianob@gcc.gnu.org>2019-10-22 19:05:49 +0000
commit51940760d7158aeb8d6747c9ee0b784d6869c7ef (patch)
tree993abc2f50f8beb33742c5dff8d85c752ee51746 /gcc/cgraph.c
parentebb3afe2b98a9a4b1c8cc5fd2745a1037c06d827 (diff)
downloadgcc-51940760d7158aeb8d6747c9ee0b784d6869c7ef.zip
gcc-51940760d7158aeb8d6747c9ee0b784d6869c7ef.tar.gz
gcc-51940760d7158aeb8d6747c9ee0b784d6869c7ef.tar.bz2
Fix incorrect merge of conflictant names in `dump_graphviz`
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
Diffstat (limited to 'gcc/cgraph.c')
-rw-r--r--gcc/cgraph.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cgraph.c b/gcc/cgraph.c
index 8b752d8..671306d 100644
--- a/gcc/cgraph.c
+++ b/gcc/cgraph.c
@@ -2155,7 +2155,7 @@ cgraph_node::dump_graphviz (FILE *f)
{
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 ());
}
}