summaryrefslogtreecommitdiffstats
path: root/gcc/tree-cfgcleanup.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-18 14:56:33 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-01-18 14:56:33 +0000
commit6fa78c7b5c8339560e02cf1270e974214ca75496 (patch)
tree370ef0af6f0c9483e8a124a460b11617ada2ca1b /gcc/tree-cfgcleanup.c
parent64d0b9960a866b1de5520d3e55fce12bcfbd6bf6 (diff)
downloadppe42-gcc-6fa78c7b5c8339560e02cf1270e974214ca75496.tar.gz
ppe42-gcc-6fa78c7b5c8339560e02cf1270e974214ca75496.zip
* tree-vrp.c (finalize_jump_threads): Do not call cleanup_cfg by hand.
* tree-tailcall (add_virtual_phis): Likewise. (optimize_tail_call): Return TODOs. (execute_tail_calls): Return TODOs. * tree-ssa-ccp (execute_fold_all_builtins): Do cleanup_cfg via TODO. * tree-cfgcleanup.c (cleanup_tree_cfg_loop): Return if something changed. * tree-ssa-forwprop.c (tree_ssa_forward_propagate_single_use_value): Cleanup cfg using TODO. * tree-flow.h (cleanup_tree_cfg_loop): Update prototype. * passes.c (execute_function_todo): When cleanup did something, remove unused locals. * tree-cfg.c (pass_build_cfg): Add cleanup_cfg TODO. (make_edges): Don't cleanup_cfg. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@120900 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-cfgcleanup.c')
-rw-r--r--gcc/tree-cfgcleanup.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-cfgcleanup.c b/gcc/tree-cfgcleanup.c
index 13a3b0b0ea8..547b67af471 100644
--- a/gcc/tree-cfgcleanup.c
+++ b/gcc/tree-cfgcleanup.c
@@ -574,7 +574,7 @@ cleanup_tree_cfg (void)
/* Cleanup cfg and repair loop structures. */
-void
+bool
cleanup_tree_cfg_loop (void)
{
bool changed = cleanup_tree_cfg ();
@@ -597,6 +597,7 @@ cleanup_tree_cfg_loop (void)
#endif
scev_reset ();
}
+ return changed;
}
/* Merge the PHI nodes at BB into those at BB's sole successor. */
OpenPOWER on IntegriCloud