https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116604
Bug ID: 116604 Summary: [15 regression] regressions on aarch64 since r15-1619-g3b9b8d6cfdf593 Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: testsuite-fail Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: thiago.bauermann at linaro dot org CC: jskumari at gcc dot gnu.org Target Milestone: --- Target: aarch64 Since commit r15-1619-g3b9b8d6cfdf593 we see this vectorization regression on aarch64-linux-gnu: Running gcc:gcc.target/aarch64/sve/pcs/aarch64-sve-pcs.exp ... FAIL: gcc.target/aarch64/sve/pcs/args_1.c -march=armv8.2-a+sve -fno-stack-protector check-function-bodies callee_pred The failure is: body: \taddvl sp, sp, #-1 \tstr p[0-9]+, \[sp\] \tstr p[0-9]+, \[sp, #1, mul vl\] \tldr (p[0-9]+), \[x0\] \tldr (p[0-9]+), \[x1\] \tbrkpa (p[0-7])\.b, p0/z, p1\.b, p2\.b \tbrkpb (p[0-7])\.b, \3/z, p3\.b, \1\.b \tbrka p0\.b, \4/z, \2\.b \tldr p[0-9]+, \[sp\] \tldr p[0-9]+, \[sp, #1, mul vl\] \taddvl sp, sp, #1 \tret against: addvl sp, sp, #-1 str p14, [sp] str p15, [sp, #1, mul vl] mov p14.b, p3.b ldr p15, [x0] ldr p3, [x1] brkpa p0.b, p0/z, p1.b, p2.b brkpb p0.b, p0/z, p14.b, p15.b brka p0.b, p0/z, p3.b ldr p14, [sp] ldr p15, [sp, #1, mul vl] addvl sp, sp, #1 ret The difference in expected vs actual is that there's an extra instruction "mov p14.b, p3.b", and also in the brkpb instruction p14.b is used instead of the expected p3.b. We also see regressions in other testcases on arm-linux-gnueabihf and yet others on arm-none-eabi, but I'll file separate bugzillas for those.