diff options
author | Diego Novillo <dnovillo@redhat.com> | 2005-08-02 19:12:52 +0000 |
---|---|---|
committer | Diego Novillo <dnovillo@gcc.gnu.org> | 2005-08-02 15:12:52 -0400 |
commit | 78234a860cc9e56a6e004629b1007dcffcbd3dfd (patch) | |
tree | 29bd75e401554db6123985cab94e6dad1c66d757 /gcc/tree-cfgcleanup.c | |
parent | 5a0067000c5395ee2bbab700f20b4a67936b0214 (diff) | |
download | gcc-78234a860cc9e56a6e004629b1007dcffcbd3dfd.tar.gz |
re PR tree-optimization/23164 (ICE in cleanup_tree_cfg with -O -fno-exceptions)
PR 23164
* tree-cfgcleanup.c (cleanup_tree_cfg): Do not limit the
number of calls to cleanup_tree_cfg_1.
testsuite/ChangeLog
PR 23164
* g++.dg/tree-ssa/pr23164.C: New test.
From-SVN: r102666
Diffstat (limited to 'gcc/tree-cfgcleanup.c')
-rw-r--r-- | gcc/tree-cfgcleanup.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c index f2454b01119..f8bca03e9df 100644 --- a/gcc/tree-cfgcleanup.c +++ b/gcc/tree-cfgcleanup.c @@ -529,22 +529,12 @@ bool cleanup_tree_cfg (void) { bool retval; - int i; timevar_push (TV_TREE_CLEANUP_CFG); - for (retval = true, i = 0; i < 5 && retval; i++) + do retval = cleanup_tree_cfg_1 (); - -#ifdef ENABLE_CHECKING - if (retval) - { - gcc_assert (!cleanup_control_flow ()); - gcc_assert (!delete_unreachable_blocks ()); - if (optimize > 0) - gcc_assert (!cleanup_forwarder_blocks ()); - } -#endif + while (retval); compact_blocks (); |