diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-inline.c | 3 |
2 files changed, 8 insertions, 1 deletions
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 <aoliva@redhat.com> + 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 <aoliva@redhat.com> + 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))); |