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

            Bug ID: 107762
           Summary: [13 Regression] Recent change causing regressions on
                    s390-linux-gnu
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: law at gcc dot gnu.org
                CC: ebotcazou at gcc dot gnu.org
  Target Milestone: ---
            Target: s390-linux-gnu

This change:

commit 3e2bdf2460a34a2389dee813a2ba8ecf976f2ec9
Author: Eric Botcazou <ebotca...@adacore.com>
Date:   Fri Nov 4 11:15:57 2022 +0100

    Do not use subword paradoxical subregs in emit_group_store

    The goal of the trick is to make life easier for the combiner, but subword
    paradoxical subregs make it harder for the register allocator instead.

    gcc/
            * expr.cc (emit_group_store): Do not use subword paradoxical
subregs

Is causing at least two regressions on s390-linux-gnu:
Tests that now fail, but worked before (19 tests):
[ ... ]
gcc.target/s390/arch12/mul-1.c scan-assembler-times \tmsgrkc\t 1
gcc.target/s390/arch13/sel-1.c scan-assembler-times \tselgr(?:h|le)\t 1
[ ... ]

Those are the only two that I have positively confirmed are due to the
emit_group_store change.

I looked briefly at the resulting assembly code for the mul-1 test and it looks
worse to me after that change.  But I'm far from an s390 expert.

You can see this with a cross compiler, you don't need a full toolchain to
test.

Reply via email to