Patterns for:
- adr z0.s, [z0.s, z0.s, lsl #<shift>]
- adr z0.d, [z0.d, z0.d, lsl #<shift>]
- adr z0.d, [z0.d, z0.d, uxtw #<shift>]
- adr z0.d, [z0.d, z0.d, sxtw #<shift>]
Did not add a pattern for
- adr z0.s, [z0.s, z0.s]
- adr z0.d, [z0.d, z0.d]
Paths
| Differential D109665
[AArch64][SVE] Add patterns to generate ADR instruction ClosedPublic Authored by mnadeem on Sep 12 2021, 3:21 PM.
Details Summary Patterns for:
Did not add a pattern for
Diff Detail Event Timeline
Comment Actions Just a few missing tests but otherwise looks good.
This revision is now accepted and ready to land.Sep 21 2021, 2:37 AM Closed by commit rG645b8f5365de: [AArch64][SVE] Add patterns to generate ADR instruction (authored by mnadeem). · Explain WhySep 21 2021, 3:51 PM This revision was automatically updated to reflect the committed changes. mnadeem added inline comments.
Revision Contents
Diff 373377 llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
llvm/test/CodeGen/AArch64/sve-gep.ll
|
Sorry I've fallen a bit behind on code reviews but will take a proper look later. I did want to raise that we now have SVEAllActive that can be used instead of AArch64ptrue 31 with the former catching more cases, looking through reinterprets for example.