llvm-project
98287456 - [AArch64][ISel] Select constructive EXT_ZZI pseudo instruction (#152554)

Commit
83 days ago
[AArch64][ISel] Select constructive EXT_ZZI pseudo instruction (#152554) The patch adds patterns to select the EXT_ZZI_CONSTRUCTIVE pseudo instead of the EXT_ZZI destructive instruction for vector_splice. This only works when the two inputs to vector_splice are identical. Given that registers aren't tied anymore, this gives the register allocator more freedom and a lot of MOVs get replaced with MOVPRFX. In some cases however, we could have just chosen the same input and output register, but regalloc preferred not to. This means we end up with some test cases now having more instructions: there is now a MOVPRFX while no MOV was previously needed.
Author
Parents
Loading