[llvm] [AArch64] Remove copy in SVE/SME predicate spill and fill (PR #81716)
Sam Tebbs via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 2 09:07:59 PDT 2024
================
@@ -1770,6 +1788,15 @@ class AArch64Operand : public MCParsedAsmOperand {
Inst.addOperand(MCOperand::createReg(AArch64::Z0 + getReg() - Base));
}
+ void addPPRorPNRRegOperands(MCInst &Inst, unsigned N) const {
+ assert(N == 1 && "Invalid number of operands!");
+ unsigned Reg = getReg();
+ // Normalise to PPR
+ if (Reg >= AArch64::PN0)
+ Reg = Reg - AArch64::PN0 + AArch64::P0;
+ Inst.addOperand(MCOperand::createReg(Reg));
+ }
+
----------------
SamTebbs33 wrote:
`PPRasPNR` can be removed. Thanks for the idea.
https://github.com/llvm/llvm-project/pull/81716
More information about the llvm-commits
mailing list