2013-09-09 Richard Biener <rguenther@suse.de>
commit1bf7f7e224133a8ff046bea544ded8e4e299370b
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Sep 2013 09:51:18 +0000 (9 09:51 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 9 Sep 2013 09:51:18 +0000 (9 09:51 +0000)
treef40a872f4789187b70cd521f5e59e8b285fb5a15
parent06ac82a04f70e76ae6f9feab297ff06cf969b897
2013-09-09  Richard Biener  <rguenther@suse.de>

Backport from mainline
2013-08-27  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57521
* tree-if-conv.c (if_convertible_bb_p): Verify that at least
one edge is non-critical.
(find_phi_replacement_condition): Make sure to use a non-critical
edge.  Cleanup and remove old bug workarounds.
(bb_postdominates_preds): Remove.
(if_convertible_loop_p_1): Do not compute post-dominators.
(combine_blocks): Do not free post-dominators.
(main_tree_if_conversion): Likewise.

* gcc.dg/torture/pr57521.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_8-branch@202388 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr57521.c [new file with mode: 0644]
gcc/tree-if-conv.c