aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@gcc.gnu.org>2015-12-21 15:15:50 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2015-12-21 15:15:50 +0000
commit059fbfa82ba0eeb405af29b96068edd97d26557a (patch)
tree18a95b85d1faf615709d3c4ac97749b058588a4a /gcc
parent989d4a8609c77122dca067c0240f3a3e0a452b6f (diff)
downloadgcc-059fbfa82ba0eeb405af29b96068edd97d26557a.zip
gcc-059fbfa82ba0eeb405af29b96068edd97d26557a.tar.gz
gcc-059fbfa82ba0eeb405af29b96068edd97d26557a.tar.bz2
re PR tree-optimization/65337 (LTO bootstrap failure with Ada enabled)
PR tree-optimization/65337 * tree-ssa-pre.c (eliminate): Also clean up abnormal edges if need be. From-SVN: r231882
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/tree-ssa-pre.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6079965..2f37316 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-12-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ PR tree-optimization/65337
+ * tree-ssa-pre.c (eliminate): Also clean up abnormal edges if need be.
+
2015-12-21 Dominik Vogt <vogt@linux.vnet.ibm.com>
* config/s390/s390.c (s390_emit_prologue): Fix base reg condition.
@@ -77,8 +82,9 @@
2015-12-19 Jan Hubicka <hubicka@ucw.cz>
- PR middle-end/65337
+ PR tree-optimization/65337
* tree-ssa-dce.c (bb_postorder): New static var.
+ (mark_stmt_necessary): Add guard for setting bb_contains_live_stmts.
(forward_edge_to_pdom): Remove.
(remove_dead_stmt): Instead of redirecting edges only keep an edge
on a path to nearest live BB.
diff --git a/gcc/tree-ssa-pre.c b/gcc/tree-ssa-pre.c
index 21a3a2b..928b00c 100644
--- a/gcc/tree-ssa-pre.c
+++ b/gcc/tree-ssa-pre.c
@@ -4499,6 +4499,8 @@ eliminate (bool do_pre)
unlink_stmt_vdef (stmt);
if (gsi_remove (&gsi, true))
bitmap_set_bit (need_eh_cleanup, bb->index);
+ if (is_gimple_call (stmt) && stmt_can_make_abnormal_goto (stmt))
+ bitmap_set_bit (need_ab_cleanup, bb->index);
release_defs (stmt);
}