Don't tail-merge blocks from different loops
authorTom de Vries <tom@codesourcery.com>
Mon, 3 Jul 2017 07:21:34 +0000 (07:21 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Mon, 3 Jul 2017 07:21:34 +0000 (07:21 +0000)
commit4752be4637d8250516dc0d8171b797de2b413d81
treef8f4d7078d0922fe65de98e7f897120309acaf7b
parent0bbfd5540d15befe675f8bac6a5aa55df9064436
Don't tail-merge blocks from different loops

2017-07-03  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/81192
* tree-ssa-tail-merge.c (same_succ_hash): Use bb->loop_father->num in
hash.
(same_succ::equal): Don't find bbs to be equal if bb->loop_father
differs.
(find_same_succ_bb): Remove obsolete test on bb->loop_father->latch.

* gcc.dg/pr81192.c: Update.

From-SVN: r249894
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr81192.c
gcc/tree-ssa-tail-merge.c