summaryrefslogtreecommitdiff
path: root/gcc/tree-ssanames.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-16 06:48:23 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-16 06:48:23 +0000
commiteb254442a43a7d91df1b2891c4cabbc4cffc2287 (patch)
tree84f56b132a3571539a9023b40e4631ca5229199d /gcc/tree-ssanames.c
parente592f6ea19ba3b8ade77b25a25b09b90e74b283c (diff)
downloadgcc-eb254442a43a7d91df1b2891c4cabbc4cffc2287.tar.gz
* tree-ssanames.c (release_dead_ssa_names): Remove invalidated
cgraph edges too. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120823 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssanames.c')
-rw-r--r--gcc/tree-ssanames.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c
index 9cbe3523f23..d9ab940fa90 100644
--- a/gcc/tree-ssanames.c
+++ b/gcc/tree-ssanames.c
@@ -329,6 +329,11 @@ release_dead_ssa_names (void)
n++;
}
FREE_SSANAMES (cfun) = NULL;
+
+ /* Cgraph edges has been invalidated and point to dead statement. We need to
+ remove them now and will rebuild it before next IPA pass. */
+ cgraph_node_remove_callees (cgraph_node (current_function_decl));
+
if (dump_file)
fprintf (dump_file, "Released %i names, %.2f%%\n", n, n * 100.0 / num_ssa_names);
return 0;