diff options
author | Richard Biener <rguenther@suse.de> | 2013-11-18 15:25:05 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-11-18 15:25:05 +0000 |
commit | 1eadb567eff34df82355c8b5d56e32b76282bad2 (patch) | |
tree | 4fdadcce61fa5e47e03e25659386ced8080d70b9 /gcc/passes.def | |
parent | 7d362f6c2b99e2b0cedf44e52194c578bdf00053 (diff) | |
download | gcc-1eadb567eff34df82355c8b5d56e32b76282bad2.zip gcc-1eadb567eff34df82355c8b5d56e32b76282bad2.tar.gz gcc-1eadb567eff34df82355c8b5d56e32b76282bad2.tar.bz2 |
re PR middle-end/59125 (gcc triggers wrong strncpy_chk)
2013-11-18 Richard Biener <rguenther@suse.de>
PR tree-optimization/59125
PR tree-optimization/54570
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): When inlining
is not complete do not treat component-references with offset zero
but different fields as equal.
* tree-object-size.c: Include tree-phinodes.h and ssa-iterators.h.
(compute_object_sizes): Apply TLC. Propagate the constant
results into all uses and fold their stmts.
* passes.def (pass_all_optimizations): Move pass_object_sizes
after the first pass_forwprop and before pass_fre.
* gcc.dg/builtin-object-size-8.c: Un-xfail.
* gcc.dg/builtin-object-size-14.c: New testcase.
* gcc.dg/strlenopt-14gf.c: Adjust.
* gcc.dg/strlenopt-1f.c: Likewise.
* gcc.dg/strlenopt-4gf.c: Likewise.
From-SVN: r204966
Diffstat (limited to 'gcc/passes.def')
-rw-r--r-- | gcc/passes.def | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/passes.def b/gcc/passes.def index 8d8dd80..49faf25 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -142,6 +142,7 @@ along with GCC; see the file COPYING3. If not see form if possible. */ NEXT_PASS (pass_phiprop); NEXT_PASS (pass_forwprop); + NEXT_PASS (pass_object_sizes); /* pass_build_alias is a dummy pass that ensures that we execute TODO_rebuild_alias at this point. */ NEXT_PASS (pass_build_alias); @@ -185,7 +186,6 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_dce); NEXT_PASS (pass_forwprop); NEXT_PASS (pass_phiopt); - NEXT_PASS (pass_object_sizes); NEXT_PASS (pass_strlen); NEXT_PASS (pass_ccp); /* After CCP we rewrite no longer addressed locals into SSA |