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

            Bug ID: 111784
           Summary: [14 Regression] aarch64: ldp_stp_{15,16,17,18}.c test
                    failures
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: acoplan at gcc dot gnu.org
  Target Milestone: ---

Since r14-4579-g0bdb9bb5607edd7df1ee74ddfcadb87324ca00c2 the following aarch64
tests are failing:

FAIL: gcc.target/aarch64/ldp_stp_15.c check-function-bodies dup_8_int32_t
FAIL: gcc.target/aarch64/ldp_stp_15.c check-function-bodies cons2_16_int32_t
FAIL: gcc.target/aarch64/ldp_stp_15.c check-function-bodies cons4_8_int32_t
FAIL: gcc.target/aarch64/ldp_stp_16.c check-function-bodies cons2_4_float
FAIL: gcc.target/aarch64/ldp_stp_17.c check-function-bodies dup_16_int64_t
FAIL: gcc.target/aarch64/ldp_stp_17.c check-function-bodies cons2_16_int64_t
FAIL: gcc.target/aarch64/ldp_stp_17.c check-function-bodies cons4_16_int64_t
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies dup_8_double
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies dup_16_double
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies cons2_4_double
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies cons2_8_double
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies cons2_8_double
FAIL: gcc.target/aarch64/ldp_stp_18.c check-function-bodies cons2_8_double

E.g. for dup8_int32_t, we now generate:

dup_8_int32_t:
.LFB9:
        .cfi_startproc
        stp     w1, w1, [x0]
        stp     w1, w1, [x0, 8]
        stp     w1, w1, [x0, 16]
        stp     w1, w1, [x0, 24]
        ret

instead of a dup with a q-register stp. Most likely we need to update the costs
on the aarch64 side.

Reply via email to