aboutsummaryrefslogtreecommitdiff
path: root/gcc/recog.c
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2014-08-14 08:56:49 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2014-08-14 08:56:49 +0000
commit121bc7dc36b5b32205f870f2e46c62ae864ceefc (patch)
treee4629df51819cedba384a41ae9e715f01ee8bbe3 /gcc/recog.c
parent8e857bbfab108081804d295065bd244f46996c57 (diff)
downloadgcc-121bc7dc36b5b32205f870f2e46c62ae864ceefc.zip
gcc-121bc7dc36b5b32205f870f2e46c62ae864ceefc.tar.gz
gcc-121bc7dc36b5b32205f870f2e46c62ae864ceefc.tar.bz2
re PR tree-optimization/62079 (ICE: in calc_dfs_tree, at dominance.c:401 with -fnon-call-exceptions)
2014-08-14 Richard Biener <rguenther@suse.de> PR rtl-optimization/62079 * recog.c (peephole2_optimize): If peep2_do_cleanup_cfg run cleanup_cfg. * g++.dg/pr62079.C: New testcase. From-SVN: r213950
Diffstat (limited to 'gcc/recog.c')
-rw-r--r--gcc/recog.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/recog.c b/gcc/recog.c
index cb49883..167b044 100644
--- a/gcc/recog.c
+++ b/gcc/recog.c
@@ -3553,6 +3553,8 @@ peephole2_optimize (void)
BITMAP_FREE (live);
if (peep2_do_rebuild_jump_labels)
rebuild_jump_labels (get_insns ());
+ if (peep2_do_cleanup_cfg)
+ cleanup_cfg (CLEANUP_CFG_CHANGED);
}
#endif /* HAVE_peephole2 */