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

            Bug ID: 119285
           Summary: [15 Regression] 5% slowdown of 519.lbm_r on Zen2 and
                    Zen4 since r15-7932-ge355fe414aa3aa
           Product: gcc
           Version: 15.0
            Status: UNCONFIRMED
          Keywords: missed-optimization
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: pheeck at gcc dot gnu.org
                CC: vmakarov at gcc dot gnu.org
            Blocks: 26163
  Target Milestone: ---
              Host: x86_64-linux
            Target: x86_64-linux

As seen here

https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=286.477.0

there was a 5% exec time slowdown of the 519.lbm_r SPEC 2017
benchmark when run with -Ofast -march=native -flto PGO on an AMD Zen2 machine.
I bisected it to r15-7932-ge355fe414aa3aa.

commit e355fe414aa3aaf215c7dd9dd789ce217a1b458c
Author:     Vladimir N. Makarov <vmaka...@redhat.com>
AuthorDate: Mon Mar 10 16:26:59 2025 -0400
Commit:     Vladimir N. Makarov <vmaka...@redhat.com>
CommitDate: Mon Mar 10 16:27:51 2025 -0400

    [PR114991][IRA]: Improve reg equiv invariant calculation

    In PR test case IRA preferred to allocate hard reg to a pseudo instead
    of its equivalence.  This resulted in allocating caller-saved hard reg
    and generating save/restore insns in the function prologue/epilogue.
    The equivalence is an invariant (stack pointer plus offset) and the
    pseudo is used mostly as memory address.  This happened as there was
    no simplification of insn after the invariant substitution.  The patch
    adds the necessary code.

This is a regression against GCC 14. See the comparison
here:

https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.8=1077.477.0&plot.9=286.477.0&;

The same regression also happens on AMD Zen4 with -O2 -march=generic -flto. 
See the slowdown here:

https://lnt.opensuse.org/db_default/v4/SPEC/graph?plot.0=957.477.0


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
[Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)

Reply via email to