public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug target/112933] New: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be @ 2023-12-09 2:49 pinskia at gcc dot gnu.org 2023-12-09 17:06 ` [Bug target/112933] " rsandifo at gcc dot gnu.org ` (2 more replies) 0 siblings, 3 replies; 4+ messages in thread From: pinskia at gcc dot gnu.org @ 2023-12-09 2:49 UTC (permalink / raw) To: gcc-bugs 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 ... ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/112933] gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be 2023-12-09 2:49 [Bug target/112933] New: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be pinskia at gcc dot gnu.org @ 2023-12-09 17:06 ` rsandifo at gcc dot gnu.org 2023-12-10 19:46 ` cvs-commit at gcc dot gnu.org 2023-12-10 19:56 ` rsandifo at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: rsandifo at gcc dot gnu.org @ 2023-12-09 17:06 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112933 Richard Sandiford <rsandifo at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2023-12-09 Assignee|unassigned at gcc dot gnu.org |rsandifo at gcc dot gnu.org Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED --- Comment #1 from Richard Sandiford <rsandifo at gcc dot gnu.org> --- Gah, forgot to test the SME2 support on BE. ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/112933] gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be 2023-12-09 2:49 [Bug target/112933] New: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be pinskia at gcc dot gnu.org 2023-12-09 17:06 ` [Bug target/112933] " rsandifo at gcc dot gnu.org @ 2023-12-10 19:46 ` cvs-commit at gcc dot gnu.org 2023-12-10 19:56 ` rsandifo at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: cvs-commit at gcc dot gnu.org @ 2023-12-10 19:46 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112933 --- Comment #2 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The trunk branch has been updated by Richard Sandiford <rsandifo@gcc.gnu.org>: https://gcc.gnu.org/g:b3aed459634654d295a1d00e6c149565ced7a9a2 commit r14-6387-gb3aed459634654d295a1d00e6c149565ced7a9a2 Author: Richard Sandiford <richard.sandiford@arm.com> Date: Sun Dec 10 19:46:07 2023 +0000 aarch64: Fix invalid subregs for BE svread/write_za Multi-register svread_za and svwrite_za are implemented using one pattern per register count, with the register contents being bitcast on entry (for writes) or return (for reads). Previously we relied on subregs for this, with the subreg for reads being handled by target-independent code. But using subregs isn't correct for many big-endian cases, where following subreg rules often requires actual instructions. The semantics are instead supposed to be those of svreinterpret. gcc/ PR target/112931 PR target/112933 * config/aarch64/aarch64-protos.h (aarch64_sve_reinterpret): Declare. * config/aarch64/aarch64.cc (aarch64_sve_reinterpret): New function. * config/aarch64/aarch64-sve-builtins-sme.cc (svread_za_impl::expand) (svwrite_za_impl::expand): Use it to cast the SVE register to the right mode. ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug target/112933] gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be 2023-12-09 2:49 [Bug target/112933] New: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be pinskia at gcc dot gnu.org 2023-12-09 17:06 ` [Bug target/112933] " rsandifo at gcc dot gnu.org 2023-12-10 19:46 ` cvs-commit at gcc dot gnu.org @ 2023-12-10 19:56 ` rsandifo at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: rsandifo at gcc dot gnu.org @ 2023-12-10 19:56 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112933 Richard Sandiford <rsandifo at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|ASSIGNED |RESOLVED --- Comment #3 from Richard Sandiford <rsandifo at gcc dot gnu.org> --- Fixed. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-12-10 19:56 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2023-12-09 2:49 [Bug target/112933] New: gcc.target/aarch64/sme2/acle-asm/read_za16_vg1x2.c fails on aarch64_be pinskia at gcc dot gnu.org 2023-12-09 17:06 ` [Bug target/112933] " rsandifo at gcc dot gnu.org 2023-12-10 19:46 ` cvs-commit at gcc dot gnu.org 2023-12-10 19:56 ` rsandifo at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).