From 1e4cc5399f5eac720b03a5e19bbef6d0efae8e5d Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Tue, 9 Oct 2007 04:46:49 +0000 Subject: re PR tree-optimization/33572 (wrong code with -O) PR tree-optimization/33572 * tree-inline.c (update_ssa_across_abnormal_edges): Tolerate the absence of a corresponding edge from the exit block. From-SVN: r129151 --- gcc/ChangeLog | 6 ++++++ gcc/tree-inline.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f3f200b..d275fbb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2007-10-09 Alexandre Oliva + PR tree-optimization/33572 + * tree-inline.c (update_ssa_across_abnormal_edges): Tolerate + the absence of a corresponding edge from the exit block. + +2007-10-09 Alexandre Oliva + PR middle-end/22156 * tree-sra.c (instantiate_element): Use BYTES_BIG_ENDIAN for bit-field layout. diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index 88c6158..f575b27 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -1055,7 +1055,8 @@ update_ssa_across_abnormal_edges (basic_block bb, basic_block ret_bb, } re = find_edge (ret_bb, e->dest); - gcc_assert (re); + if (!re) + continue; gcc_assert ((re->flags & (EDGE_EH | EDGE_ABNORMAL)) == (e->flags & (EDGE_EH | EDGE_ABNORMAL))); -- cgit v1.1