[llvm] [AArch64][SME] Implement the SME ABI (ZA state management) in Machine IR (PR #149062)
Gaƫtan Bossu via llvm-commits
llvm-commits at lists.llvm.org
Thu Aug 14 08:44:13 PDT 2025
================
@@ -86,6 +90,30 @@ let usesCustomInserter = 1, Defs = [SP] in {
def : Pat<(i64 (AArch64AllocateSMESaveBuffer GPR64:$size)),
(AllocateSMESaveBuffer $size)>;
+//===----------------------------------------------------------------------===//
+// New SME ABI lowering ISD nodes/pseudos (-aarch64-new-sme-abi)
+//===----------------------------------------------------------------------===//
+
+let hasSideEffects = 1 in {
+ def InOutZAUsePseudo : Pseudo<(outs), (ins), []>, Sched<[]>;
+ def RequiresZASavePseudo : Pseudo<(outs), (ins), []>, Sched<[]>;
----------------
gbossu wrote:
Nit: AFAIR those are just marker nodes and they will eventually be eliminated. Would it make sense to mark them as `Meta`?
https://github.com/llvm/llvm-project/pull/149062
More information about the llvm-commits
mailing list