Hi All,

Here is a simple patch which cures the problem with nonlegal
transformation of endless loop. THe fix is simply check that guard
edge destination is not loop latch block.

Bootstrapping and regression testing did not show any new failures.
Is it OK for trunk?

ChangeLog:
2016-05-05  Yuri Rumyantsev  <ysrum...@gmail.com>

PR debug/70935
* tree-ssa-loop-unswitch.c (find_loop_guard): Reject guard edge with
loop latch destination.

gcc/testsuite/ChangeLog
* gcc.dg/torture/pr70935.c: New test.

Attachment: patch.1
Description: Binary data

Reply via email to