PR 64878: do not jump thread across more than one back-edge
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Feb 2015 21:08:13 +0000 (21:08 +0000)
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 6 Feb 2015 21:08:13 +0000 (21:08 +0000)
commitb472bf0c2a5ae3d339cab233f9ca0064e8c18d5c
tree08d97221c46417aa09ef53738c958a0a4940782d
parentdd0d4e5261e97184425852bb2ec9b81b29dc2139
PR 64878: do not jump thread across more than one back-edge

2015-02-04  Sebastian Pop  <s.pop@samsung.com>
    Brian Rzycki  <b.rzycki@samsung.com>

PR tree-optimization/64878
* tree-ssa-threadedge.c: Include tree-ssa-loop.h.
(fsm_find_control_statement_thread_paths): Add parameter seen_loop_phi.
Stop recursion at loop phi nodes after having visited a loop phi node.

* testsuite/gcc.dg/tree-ssa/ssa-dom-thread-8.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@220491 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-thread-8.c [new file with mode: 0644]
gcc/tree-ssa-threadedge.c