[Mlir-commits] [mlir] Add more ZA modes (PR #77361)
Andrzej WarzyĆski
llvmlistbot at llvm.org
Tue Jan 9 04:52:41 PST 2024
================
@@ -28,13 +28,15 @@ def ArmStreamingMode : I32EnumAttr<"ArmStreamingMode", "Armv9 Streaming SVE mode
let genSpecializedAttr = 0;
}
-// TODO: Add other ZA modes.
-// https://arm-software.github.io/acle/main/acle.html#sme-attributes-relating-to-za
def ArmZaMode : I32EnumAttr<"ArmZaMode", "Armv9 ZA storage mode",
[
I32EnumAttrCase<"Disabled", 0, "disabled">,
// A function's ZA state is created on entry and destroyed on exit.
I32EnumAttrCase<"NewZA", 1, "arm_new_za">,
+ // A function that preserves ZA state.
+ I32EnumAttrCase<"PreservesZA", 2, "arm_preserves_za">,
----------------
banach-space wrote:
You are referring to C semantics (as per https://arm-software.github.io/acle/main/acle.html#sme-attributes-relating-to-za). However, we are not required to follow that in MLIR and can focus on LLVM instead (i.e. https://llvm.org/docs/AArch64SME.html).
That's a very good point nonetheless that will be very relevant within Flang. Not sure we could capture it here.
https://github.com/llvm/llvm-project/pull/77361
More information about the Mlir-commits
mailing list