https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91834
Bug ID: 91834 Summary: [AArch64] LSE atomics, ILP32 warnings Product: gcc Version: 10.0 Status: UNCONFIRMED Keywords: build Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: p...@gcc-bugzilla.mail.kapsi.fi Target Milestone: --- Host: x86_64-linux-gnu Target: aarch64-none-elf Build: x86_64-linux-gnu Hi. libgcc/config/aarch64/lse.S produces the following warning when doing an ILP32 build, which is then repeated multiple times. This is because w(tmp1) and s(tmp1) point to the same register. I presume the warning itself is not bogus. libgcc/config/aarch64/lse.S:230: Warning: unpredictable: identical transfer and status registers --`stlxr w17,w17,[x1] 101 #define w(N) glue2(w, N) 102 #if SIZE < 8 103 # define s(N) w(N) 104 #else 105 # define s(N) x(N) 106 #endif ... 230 STXR w(tmp1), s(tmp1), [x1] I did not study the LSE code further, as I don't know if this feature is expected to work with ILP32 (as in perhaps not scheduled for release).