diff options
author | Eric Botcazou <ebotcazou@libertysurf.fr> | 2003-09-17 09:11:01 +0200 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2003-09-17 07:11:01 +0000 |
commit | 0b75beaaaf8af46fcbd7bd9ae535a6255737b69a (patch) | |
tree | 3e48c1b60504587e9bfbfbaab16721bd61423b08 /gcc/toplev.c | |
parent | 936346797b01c6f191bd904f1a6bdb36ab43317d (diff) | |
download | gcc-0b75beaaaf8af46fcbd7bd9ae535a6255737b69a.zip gcc-0b75beaaaf8af46fcbd7bd9ae535a6255737b69a.tar.gz gcc-0b75beaaaf8af46fcbd7bd9ae535a6255737b69a.tar.bz2 |
re PR rtl-optimization/11646 (ICE in commit_one_edge_insertion with -fnon-call-exceptions -fgcse -O)
PR optimization/11646
* cfgrtl.c (purge_dead_edges) [JUMP_INSN]: Rematerialize the
EDGE_ABNORMAL flag for EH edges.
* toplev.c (rest_of_handle_cse): Delete unreachable blocks
if dead edges were purged.
From-SVN: r71455
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index bcc9c50..91409bf 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -2846,7 +2846,8 @@ rest_of_handle_cse (tree decl, rtx insns) tem = cse_main (insns, max_reg_num (), 0, rtl_dump_file); if (tem) rebuild_jump_labels (insns); - purge_all_dead_edges (0); + if (purge_all_dead_edges (0)) + delete_unreachable_blocks (); delete_trivially_dead_insns (insns, max_reg_num ()); |