From: rakdver Date: Thu, 31 Mar 2005 20:34:24 +0000 (+0000) Subject: * cfgloopanal.c (mark_loop_exit_edges): Clean EDGE_LOOP_EXIT X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c088dce620b6ca4e163bceeb44903b67251380f1;p=thirdparty%2Fgcc.git * cfgloopanal.c (mark_loop_exit_edges): Clean EDGE_LOOP_EXIT flag for edges outside any loops. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@97348 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index dfd47ba49f64..e30ac442c4e0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-03-31 Zdenek Dvorak + + * cfgloopanal.c (mark_loop_exit_edges): Clean EDGE_LOOP_EXIT + flag for edges outside any loops. + 2005-03-31 Janis Johnson * doc/sourcebuild.texi (Test Directives): Describe cleanup-* procs. diff --git a/gcc/cfgloopanal.c b/gcc/cfgloopanal.c index 055375d741f2..2d2ece2cb2d6 100644 --- a/gcc/cfgloopanal.c +++ b/gcc/cfgloopanal.c @@ -580,13 +580,10 @@ mark_loop_exit_edges (struct loops *loops) { edge_iterator ei; - /* Do not mark exits from the fake outermost loop. */ - if (!bb->loop_father->outer) - continue; - FOR_EACH_EDGE (e, ei, bb->succs) { - if (loop_exit_edge_p (bb->loop_father, e)) + if (bb->loop_father->outer + && loop_exit_edge_p (bb->loop_father, e)) e->flags |= EDGE_LOOP_EXIT; else e->flags &= ~EDGE_LOOP_EXIT;