https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112933
Bug ID: 112933 Summary: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be Product: gcc Version: 14.0 Status: UNCONFIRMED Keywords: missed-optimization, testsuite-fail Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: pinskia at gcc dot gnu.org CC: rsandifo at gcc dot gnu.org Target Milestone: --- Target: aarch64_be >From the log ``` FAIL: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c -std=c23 -O2 -fno-schedule-insns -fno-schedule-insns2 -DCHECK_ASM --save-temps -DTEST_FULL check-function-bodies read_0_z0 body: \tmov (w8|w9|w10|w11), w0 \tmova {z0\.d - z1\.d}, za\.d\[\1, 0, vgx2\] \tret against: addvl sp, sp, #-2 mov w9, w0 mova {z30.d - z31.d}, za.d[w9, 0, vgx2] ptrue p7.b, all st1d z30.d, p7, [sp] st1d z31.d, p7, [sp, #1, mul vl] ld1h z0.h, p7/z, [sp] ld1h z1.h, p7/z, [sp, #1, mul vl] addvl sp, sp, #2 ret ``` Seems like all of the SME check-function-bodies testcases fail this way for big-endian in that they extra store/loads there ...