diff options
author | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-26 16:51:39 +0000 |
---|---|---|
committer | matz <matz@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-26 16:51:39 +0000 |
commit | 0d63aa16f49c5afb74d2572d84163c07d48874d8 (patch) | |
tree | 4d51b8434dfcafe81793e2040b84ada057bdbbc5 /gcc/tree-ssa-copy.c | |
parent | 1171c3e495fa7d149696c7c65fde6336eaf5dac3 (diff) | |
download | gcc-0d63aa16f49c5afb74d2572d84163c07d48874d8.tar.gz |
* tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
* passes.c (init_optimization_passes): Remove superfluous
copy-prop pass.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@167184 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-copy.c')
-rw-r--r-- | gcc/tree-ssa-copy.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/tree-ssa-copy.c b/gcc/tree-ssa-copy.c index 68370336a76..d552c3ab61b 100644 --- a/gcc/tree-ssa-copy.c +++ b/gcc/tree-ssa-copy.c @@ -775,7 +775,9 @@ fini_copy_prop (void) duplicate_ssa_name_ptr_info (copy_of[i].value, SSA_NAME_PTR_INFO (var)); } - substitute_and_fold (get_value, NULL, true); + /* Don't do DCE if we have loops. That's the simplest way to not + destroy the scev cache. */ + substitute_and_fold (get_value, NULL, !current_loops); free (copy_of); } |