Commit 16f2b86a by Zdenek Dvorak Committed by Zdenek Dvorak

cfgloop.c (flow_loops_find): Fix handling of abnormal edges.

2003-01-16  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>

	* cfgloop.c (flow_loops_find): Fix handling of abnormal edges.

From-SVN: r61393
parent c1b50e49
2003-01-16 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
* cfgloop.c (flow_loops_find): Fix handling of abnormal edges.
2003-01-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* dbxout.c (lastfile, cwd): Fix `unused' warning.
......
......@@ -804,19 +804,20 @@ flow_loops_find (loops, flags)
header->loop_depth = 0;
/* If we have an abnormal predecessor, do not consider the
loop (not worth the problems). */
for (e = header->pred; e; e = e->pred_next)
if (e->flags & EDGE_ABNORMAL)
break;
if (e)
continue;
for (e = header->pred; e; e = e->pred_next)
{
basic_block latch = e->src;
if (e->flags & EDGE_ABNORMAL)
{
if (more_latches)
{
RESET_BIT (headers, header->index);
num_loops--;
}
break;
}
abort ();
/* Look for back edges where a predecessor is dominated
by this block. A natural loop has a single entry
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment