Fix tail-merge pass for dead type-unsafe code
authorTom de Vries <tom@codesourcery.com>
Wed, 19 Nov 2014 10:44:58 +0000 (10:44 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Wed, 19 Nov 2014 10:44:58 +0000 (10:44 +0000)
commit8024d4b6c9ce06d63a87788c7fd4f74461552227
tree37b8a91d895a605dcdce91289d14dca2c4b9d0b0
parent4a19f719d621dc98a7983964a6b76e9d653479a8
Fix tail-merge pass for dead type-unsafe code

2014-11-19  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/62167
* tree-ssa-tail-merge.c (stmt_local_def): Handle statements with vuse
conservatively.
(gimple_equal_p): Don't use vn_valueize to compare for lhs equality of
assigns.

* gcc.dg/pr51879-12.c: Add xfails.
* gcc.dg/pr62167-run.c: New test.
* gcc.dg/pr62167.c: New test.

From-SVN: r217761
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr51879-12.c
gcc/testsuite/gcc.dg/pr62167-run.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/pr62167.c [new file with mode: 0644]
gcc/tree-ssa-tail-merge.c