[llvm] [AArch64] Enable quad variant st1b/ld1b for callee-saved spills (PR #225100)
Kieran B via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 24 02:13:46 PDT 2026
================
@@ -2177,14 +2270,22 @@ bool AArch64FrameLowering::spillCalleeSavedRegisters(
}
// Update the StackIDs of the SVE stack slots.
MachineFrameInfo &MFI = MF.getFrameInfo();
- if (RPI.Type == RegPairInfo::ZPR) {
+ if (RGI.Type == RegGroupInfo::ZPR) {
MFI.setStackID(FrameIdxReg1, TargetStackID::ScalableVector);
- if (RPI.isPaired())
+ if (RGI.isGrouped())
MFI.setStackID(FrameIdxReg2, TargetStackID::ScalableVector);
- } else if (RPI.Type == RegPairInfo::PPR) {
+ if (RGI.isQuad()) {
+ MFI.setStackID(FrameIdxReg3, TargetStackID::ScalableVector);
+ MFI.setStackID(FrameIdxReg4, TargetStackID::ScalableVector);
+ }
+ } else if (RGI.Type == RegGroupInfo::PPR) {
MFI.setStackID(FrameIdxReg1, TargetStackID::ScalablePredicateVector);
- if (RPI.isPaired())
+ if (RGI.isGrouped())
MFI.setStackID(FrameIdxReg2, TargetStackID::ScalablePredicateVector);
+ if (RGI.isQuad()) {
+ MFI.setStackID(FrameIdxReg3, TargetStackID::ScalablePredicateVector);
+ MFI.setStackID(FrameIdxReg4, TargetStackID::ScalablePredicateVector);
+ }
}
----------------
kieroxide wrote:
Done.
https://github.com/llvm/llvm-project/pull/225100
More information about the llvm-commits
mailing list