[llvm] [AArch64] Optimize when storing symmetry constants (PR #93717)
David Green via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 14 05:31:40 PDT 2024
davemgreen wrote:
Hi - I was taking a look at what might be wrong. I think the script was compiling with `-mcpu=native -Ofast -flto`, and LTO can be difficult to debug. Luckily it looks like the assembly didn't change too much though, and the difference might be down to the offsets of the ldp's needing to be updated. Can you add some tests with non-zero offsets and make sure they look OK?
```
define void @test_store_0x1234567812345678_o(ptr %x) {
; CHECK-LABEL: test_store_0x1234567812345678_o:
; CHECK: // %bb.0:
; CHECK-NEXT: mov x8, #22136 // =0x5678
; CHECK-NEXT: movk x8, #4660, lsl #16
; CHECK-NEXT: stp w8, w8, [x0, #32]
; CHECK-NEXT: ret
%g = getelementptr i64, ptr %x, i64 4
store i64 u0x1234567812345678, ptr %g
ret void
}
```
https://github.com/llvm/llvm-project/pull/93717
More information about the llvm-commits
mailing list