https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119723

--- Comment #4 from Filip Kastl <pheeck at gcc dot gnu.org> ---
Bisection points to r15-7637-g94d01a88470293 being the first fast commit.

Author: Richard Biener <rguent...@suse.de>
Date:   Wed Feb 12 11:20:10 2025 +0100

    tree-optimization/86270 - improve SSA coalescing for loop exit test

    The PR indicates a very specific issue with regard to SSA coalescing
    failures because there's a pre IV increment loop exit test.  While
    IVOPTs created the desired IL we later simplify the exit test into
    the undesirable form again.  The following fixes this up during RTL
    expansion where we try to improve coalescing of IVs.  That seems
    easier that trying to avoid the simplification with some weird
    heuristics (it could also have been written this way).

            PR tree-optimization/86270
            * tree-outof-ssa.cc (insert_backedge_copies): Pattern
            match a single conflict in a loop condition and adjust
            that avoiding the conflict if possible.

            * gcc.target/i386/pr86270.c: Adjust to check for no reg-reg
            copies as well.

 gcc/testsuite/gcc.target/i386/pr86270.c |  3 ++
 gcc/tree-outof-ssa.cc                   | 61 ++++++++++++++++++++++++++++++---
 2 files changed, 59 insertions(+), 5 deletions(-)

Reply via email to