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