2018-01-26 Richard Biener <rguenther@suse.de>
commitbe29223717d9739ed867c5d7e0c77d59d26ca6c5
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 26 Jan 2018 14:50:25 +0000 (26 14:50 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 26 Jan 2018 14:50:25 +0000 (26 14:50 +0000)
treeaf94a9ed7de3029422c43104fa59e8e934539808
parentce5f88b55bd9236aa2697820f22003dc8d681bc2
2018-01-26  Richard Biener  <rguenther@suse.de>

PR rtl-optimization/84003
* dse.c (record_store): Only record redundant stores when
the earlier store aliases at least all accesses the later one does.

* g++.dg/torture/pr77745.C: Mark foo noinline to trigger
latent bug in DSE if NOINLINE is appropriately defined.
* g++.dg/torture/pr77745-2.C: New testcase including pr77745.C
and defining NOINLINE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@257091 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/dse.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/torture/pr77745-2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/torture/pr77745.C