tree-cfgcleanup.c (cleanup_tree_cfg): Fix flowgraph change indicator.

* tree-cfgcleanup.c (cleanup_tree_cfg): Fix flowgraph change
	indicator.  Return true if the flowgraph changed during
	cleanup.

From-SVN: r103291
This commit is contained in:
Diego Novillo 2005-08-19 18:52:55 +00:00 committed by Diego Novillo
parent 52270a3cb5
commit e3594cb39e
2 changed files with 17 additions and 4 deletions

View file

@ -1,3 +1,9 @@
2005-08-19 Diego Novillo <dnovillo@redhat.com>
* tree-cfgcleanup.c (cleanup_tree_cfg): Fix flowgraph change
indicator. Return true if the flowgraph changed during
cleanup.
2005-08-19 Diego Novillo <dnovillo@redhat.com>
PR 23476

View file

@ -523,17 +523,24 @@ cleanup_tree_cfg_1 (void)
}
/* Remove unreachable blocks and other miscellaneous clean up work. */
/* Remove unreachable blocks and other miscellaneous clean up work.
Return true if the flowgraph was modified, false otherwise. */
bool
cleanup_tree_cfg (void)
{
bool retval;
bool retval, changed;
timevar_push (TV_TREE_CLEANUP_CFG);
/* Iterate until there are no more cleanups left to do. If any
iteration changed the flowgraph, set CHANGED to true. */
changed = false;
do
retval = cleanup_tree_cfg_1 ();
{
retval = cleanup_tree_cfg_1 ();
changed |= retval;
}
while (retval);
compact_blocks ();
@ -544,7 +551,7 @@ cleanup_tree_cfg (void)
timevar_pop (TV_TREE_CLEANUP_CFG);
return retval;
return changed;
}
/* Cleanup cfg and repair loop structures. */