aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-vect-loop-manip.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 71629fa..41f0c8f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-12-28 Richard Guenther <rguenther@suse.de>
+
+ PR debug/46931
+ * tree-vect-loop-manip.c (slpeel_tree_peel_loop_to_edge): Update
+ SSA before removing dead stmts.
+
2010-12-28 H.J. Lu <hongjiu.lu@intel.com>
Uros Bizjak <ubizjak@gmail.com>
diff --git a/gcc/tree-vect-loop-manip.c b/gcc/tree-vect-loop-manip.c
index 6ecd304..28b75f1 100644
--- a/gcc/tree-vect-loop-manip.c
+++ b/gcc/tree-vect-loop-manip.c
@@ -1442,6 +1442,9 @@ slpeel_tree_peel_loop_to_edge (struct loop *loop,
if (update_first_loop_count)
slpeel_make_loop_iterate_ntimes (first_loop, first_niters);
+ BITMAP_FREE (definitions);
+ delete_update_ssa ();
+
/* Remove all pattern statements from the loop copy. They will confuse
the expander if DCE is disabled.
??? The pattern recognizer should be split into an analysis and
@@ -1451,9 +1454,6 @@ slpeel_tree_peel_loop_to_edge (struct loop *loop,
adjust_vec_debug_stmts ();
- BITMAP_FREE (definitions);
- delete_update_ssa ();
-
return new_loop;
}