2017-05-11 Richard Biener <rguenther@suse.de>
commit3c07d5b144551a09196959b592daee2caae07387
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 11 May 2017 09:16:00 +0000 (11 09:16 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 11 May 2017 09:16:00 +0000 (11 09:16 +0000)
tree9a8d993679a6f1ac8732484d5735bfcfde36a743
parent6e8dc25a4178d39a26ca3bb1d05bb50efe6415d2
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@247882 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/tree-ssa-pre.c
gcc/tree-ssa-tail-merge.c