diff options
author | Richard Biener <rguenther@suse.de> | 2014-06-18 07:58:36 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2014-06-18 07:58:36 +0000 |
commit | 25b7069af201bcecc06fdc0b9a0fc455f5985c77 (patch) | |
tree | f05d3024998148eae0b1acf57f157ce6f955a2ca /gcc/tree-ssa-propagate.c | |
parent | f791702956d022ee147a0f87534f4f3ebb74b572 (diff) | |
download | gcc-25b7069af201bcecc06fdc0b9a0fc455f5985c77.zip gcc-25b7069af201bcecc06fdc0b9a0fc455f5985c77.tar.gz gcc-25b7069af201bcecc06fdc0b9a0fc455f5985c77.tar.bz2 |
tree-ssa-propagate.c (replace_phi_args_in): Return whether we propagated anything.
2014-06-18 Richard Biener <rguenther@suse.de>
* tree-ssa-propagate.c (replace_phi_args_in): Return whether
we propagated anything.
(substitute_and_fold_dom_walker::before_dom_children): Something
changed if we propagated into PHI arguments.
* tree-ssa-pre.c (eliminate): Always schedule cfg-cleanup if
we removed a stmt.
From-SVN: r211770
Diffstat (limited to 'gcc/tree-ssa-propagate.c')
-rw-r--r-- | gcc/tree-ssa-propagate.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/tree-ssa-propagate.c b/gcc/tree-ssa-propagate.c index cdc9f6a..eb65b18 100644 --- a/gcc/tree-ssa-propagate.c +++ b/gcc/tree-ssa-propagate.c @@ -964,7 +964,7 @@ replace_uses_in (gimple stmt, ssa_prop_get_value_fn get_value) /* Replace propagated values into all the arguments for PHI using the values from PROP_VALUE. */ -static void +static bool replace_phi_args_in (gimple phi, ssa_prop_get_value_fn get_value) { size_t i; @@ -1015,6 +1015,8 @@ replace_phi_args_in (gimple phi, ssa_prop_get_value_fn get_value) fprintf (dump_file, "\n"); } } + + return replaced; } @@ -1066,7 +1068,7 @@ substitute_and_fold_dom_walker::before_dom_children (basic_block bb) continue; } } - replace_phi_args_in (phi, get_value_fn); + something_changed |= replace_phi_args_in (phi, get_value_fn); } /* Propagate known values into stmts. In some case it exposes |