[llvm] [AArch64] Remove copy in SVE/SME predicate spill and fill (PR #81716)
Sam Tebbs via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 5 08:58:58 PDT 2024
================
@@ -1290,6 +1294,20 @@ class AArch64Operand : public MCParsedAsmOperand {
return DiagnosticPredicateTy::NearMatch;
}
+ template <int ElementWidth, unsigned Class>
+ DiagnosticPredicate isSVEPredicateOrPredicateAsCounterRegOfWidth() const {
+ if (Kind != k_Register || (Reg.Kind != RegKind::SVEPredicateAsCounter &&
+ Reg.Kind != RegKind::SVEPredicateVector))
+ return DiagnosticPredicateTy::NoMatch;
+
+ if ((isSVEPredicateAsCounterReg<Class>() ||
+ isSVEPredicateVectorRegOfWidth<ElementWidth, Class>()) &&
+ (Reg.ElementWidth == ElementWidth))
----------------
SamTebbs33 wrote:
Done
https://github.com/llvm/llvm-project/pull/81716
More information about the llvm-commits
mailing list