On 01/23/2017 06:17 AM, Richard Biener wrote:

The following is a fix for jump-threading loop-assumption clearing
which was done only on the first header/irreducible crossing rather
than the one at the destination of the threading path.

Bootstrapped and tested on x86_64-unknown-linux-gnu, ok for trunk?

Thanks,
Richard.

2017-01-23  Richard Biener  <rguent...@suse.de>

        PR tree-optimization/79088
        PR tree-optimization/79188
        * tree-ssa-threadupdate.c (mark_threaded_blocks): Move code
        resetting loop bounds after last path deletion.  Reset loop
        bounds of the target loop, make code match the comments.
        * tree-ssa-threadbackwards.c (pass_early_thread_jumps::execute):
        Make sure loops need no fixups.

        * gcc.dg/torture/pr79088.c: New testcase.
        * gcc.dg/torture/pr79188.c: Likewise.
OK.  If you don't commit it today, I likely will.

Thanks,
Jeff

Reply via email to