[llvm] [AArch64] SME implementation for agnostic-ZA functions (PR #120150)
Sander de Smalen via llvm-commits
llvm-commits at lists.llvm.org
Mon Dec 23 02:02:52 PST 2024
================
@@ -9455,9 +9574,14 @@ AArch64TargetLowering::LowerCall(CallLoweringInfo &CLI,
DAG.getConstant(Intrinsic::aarch64_sme_set_tpidr2, DL, MVT::i32),
DAG.getConstant(0, DL, MVT::i64));
TPIDR2.Uses++;
+ } else if (RequiresSaveAllZA) {
+ Result = emitSMEStateSaveRestore(*this, DAG, FuncInfo, DL, Chain,
+ /*IsSave=*/false);
+ FuncInfo->setSMESaveBufferUsed();
----------------
sdesmalen-arm wrote:
> I ask because I'm assuming the "used" is synonymous with "has been restored".
It can be considered used when it's either saved or restored. So yes, it makes sense to move it into that function!
https://github.com/llvm/llvm-project/pull/120150
More information about the llvm-commits
mailing list