tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Skip unreachable blocks...
authorRichard Biener <rguenther@suse.de>
Thu, 11 May 2017 09:16:00 +0000 (09:16 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Thu, 11 May 2017 09:16:00 +0000 (09:16 +0000)
commit7581ce9a1ad6df9c8998a3c74256837a1ff6f7cc
tree9a8d993679a6f1ac8732484d5735bfcfde36a743
parent86b001e0012c26b3a39a65937ba949e2285fdd77
tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Skip unreachable blocks and destinations.

2017-05-11  Richard Biener  <rguenther@suse.de>

* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
Skip unreachable blocks and destinations.
(eliminate): Move stmt removal and fixup ...
(fini_eliminate): ... here.  Skip inserted exprs.
(pass_pre::execute): Move fini_pre after fini_eliminate.
* tree-ssa-tailmerge.c: Include tree-cfgcleanup.h.
(tail_merge_optimize): Run cleanup_tree_cfg if requested by
PRE to get rid of dead code that has invalid SSA form and
split critical edges again.

From-SVN: r247882
gcc/ChangeLog
gcc/tree-ssa-pre.c
gcc/tree-ssa-tail-merge.c