aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssanames.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e0fcfbf..7c3b628 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-01-16 Jan Hubicka <jh@suse.cz>
+
+ * tree-ssanames.c (release_dead_ssa_names): Remove invalidated
+ cgraph edges too.
+
2007-01-15 Eric Christopher <echristo@apple.com>
* ifcvt.c: Include vec.h, vecprim.h.
diff --git a/gcc/tree-ssanames.c b/gcc/tree-ssanames.c
index 9cbe352..d9ab940 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;