[llvm] [AArch64] Model ZA array using inaccessible memory (PR #132058)
Paul Walker via llvm-commits
llvm-commits at lists.llvm.org
Fri Apr 4 05:12:51 PDT 2025
================
@@ -3189,56 +3189,56 @@ let TargetPrefix = "aarch64" in {
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>],
- []>;
+ [IntrInaccessibleMemOnly]>;
class SME2_Matrix_ArrayVector_VG2_Multi_Single_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>,
LLVMMatchType<0>],
- []>;
+ [IntrInaccessibleMemOnly]>;
class SME2_Matrix_ArrayVector_VG4_Multi_Single_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>,
LLVMMatchType<0>],
- []>;
+ [IntrInaccessibleMemOnly]>;
class SME2_Matrix_ArrayVector_VG2_Multi_Multi_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>,
LLVMMatchType<0>, LLVMMatchType<0>],
- []>;
+ [IntrInaccessibleMemOnly]>;
class SME2_Matrix_ArrayVector_VG4_Multi_Multi_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>,
LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>],
- []>;
+ [IntrInaccessibleMemOnly]>;
class SME2_Matrix_ArrayVector_Single_Index_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty,
LLVMMatchType<0>, llvm_i32_ty],
- [ImmArg<ArgIndex<3>>]>;
+ [IntrInaccessibleMemOnly, ImmArg<ArgIndex<3>>]>;
class SME2_Matrix_ArrayVector_VG2_Multi_Index_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>,
LLVMMatchType<0>, llvm_i32_ty],
- [ImmArg<ArgIndex<4>>]>;
+ [IntrInaccessibleMemOnly, ImmArg<ArgIndex<4>>]>;
class SME2_Matrix_ArrayVector_VG4_Multi_Index_Intrinsic
: DefaultAttrsIntrinsic<[],
[llvm_i32_ty,
llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>,
LLVMMatchType<0>, llvm_i32_ty],
- [ImmArg<ArgIndex<6>>]>;
+ [IntrInaccessibleMemOnly, ImmArg<ArgIndex<6>>]>;
class SME2_VG2_Multi_Imm_Intrinsic
: DefaultAttrsIntrinsic<[LLVMSubdivide2VectorType<0>],
----------------
paulwalker-arm wrote:
It is worth renaming instances like this so that SME is only used for intrinsics that related to ZA or ZT. Doing this makes it easier to spot potentially missing `InaccessibleMem` flags.
https://github.com/llvm/llvm-project/pull/132058
More information about the llvm-commits
mailing list