]> git.ipfire.org Git - thirdparty/gcc.git/commit
tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Rewrite to propagate...
authorRichard Biener <rguenther@suse.de>
Fri, 13 Jun 2014 10:21:40 +0000 (10:21 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Fri, 13 Jun 2014 10:21:40 +0000 (10:21 +0000)
commit6aa4c5b68dbf3723a24d831f1340c91327211e5f
treef0759513076163a54325c7033fa3eea9a9c9db00
parent80298c3b46400a8f24be35ddf9169ccc18e5cf9b
tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Rewrite to propagate the VN result into all uses where possible and to remove...

2014-06-13  Richard Biener  <rguenther@suse.de>

* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Rewrite to propagate the VN result into all uses where
possible and to remove stmts becoming dead because of that.
(eliminate): Generalize stmt removal handling, remove in
reverse dominator order to support proper debug stmt
generation.  Update stmts before removing stmts.
* tree-ssa-propagate.c (propagate_tree_value): Remove
bogus assert.

* c-c++-common/pr46562-2.c: Adjust.
* g++.dg/tree-ssa/pr8781.C: Likewise.
* gcc.dg/tree-ssa/ssa-fre-24.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-25.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-32.c: Likewise.
* gcc.dg/tree-ssa/ssa-fre-39.c: Likewise.
* gcc.dg/tree-ssa/ssa-pre-16.c: Likewise.

From-SVN: r211625
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/c-c++-common/pr46562-2.c
gcc/testsuite/g++.dg/tree-ssa/pr8781.C
gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-24.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-25.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-32.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-fre-39.c
gcc/testsuite/gcc.dg/tree-ssa/ssa-pre-16.c
gcc/tree-ssa-pre.c
gcc/tree-ssa-propagate.c