mirror of
https://github.com/intel/llvm.git
synced 2026-02-06 15:18:53 +08:00
98347d902e584792df8438f5f3b8cde190dd8d2b
FastISel didn't take much advantage of the different addressing modes available to it on AArch64. This commit allows the ComputeAddress method to recognize more addressing modes that allows shifts and sign-/zero-extensions to be folded into the memory operation itself. For Example: lsl x1, x1, #3 --> ldr x0, [x0, x1, lsl #3] ldr x0, [x0, x1] sxtw x1, w1 lsl x1, x1, #3 --> ldr x0, [x0, x1, sxtw #3] ldr x0, [x0, x1] llvm-svn: 215597
…
…
Languages
LLVM
41.4%
C++
31.4%
C
13%
Assembly
9.6%
MLIR
1.5%
Other
2.7%