]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR middle-end/59125 (gcc triggers wrong strncpy_chk)
authorRichard Biener <rguenther@suse.de>
Mon, 18 Nov 2013 15:25:05 +0000 (15:25 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Mon, 18 Nov 2013 15:25:05 +0000 (15:25 +0000)
commit1eadb567eff34df82355c8b5d56e32b76282bad2
tree4fdadcce61fa5e47e03e25659386ced8080d70b9
parent7d362f6c2b99e2b0cedf44e52194c578bdf00053
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
gcc/ChangeLog
gcc/passes.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/builtin-object-size-14.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/builtin-object-size-8.c
gcc/testsuite/gcc.dg/strlenopt-14gf.c
gcc/testsuite/gcc.dg/strlenopt-1f.c
gcc/testsuite/gcc.dg/strlenopt-4gf.c
gcc/tree-object-size.c
gcc/tree-ssa-sccvn.c