@@ -3031,11 +3031,11 @@ let TargetPrefix = "aarch64" in {
3031
3031
3032
3032
def int_aarch64_sme_write_lane_zt
3033
3033
: DefaultAttrsIntrinsic<[], [llvm_i32_ty, llvm_anyvector_ty, llvm_i32_ty],
3034
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrNoMem, IntrHasSideEffects ]>;
3034
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly ]>;
3035
3035
3036
3036
def int_aarch64_sme_write_zt
3037
3037
: DefaultAttrsIntrinsic<[], [llvm_i32_ty, llvm_anyvector_ty],
3038
- [ImmArg<ArgIndex<0>>, IntrNoMem, IntrHasSideEffects ]>;
3038
+ [ImmArg<ArgIndex<0>>, IntrInaccessibleMemOnly, IntrWriteMem ]>;
3039
3039
3040
3040
3041
3041
def int_aarch64_sme_zero : DefaultAttrsIntrinsic<[], [llvm_i32_ty], [ImmArg<ArgIndex<0>>]>;
@@ -3851,50 +3851,50 @@ let TargetPrefix = "aarch64" in {
3851
3851
def int_aarch64_sve_sel_x4 : SVE2_VG4_Sel_Intrinsic;
3852
3852
3853
3853
class SME_LDR_STR_ZT_Intrinsic
3854
- : DefaultAttrsIntrinsic<[], [llvm_i32_ty, llvm_ptr_ty]>;
3854
+ : DefaultAttrsIntrinsic<[], [llvm_i32_ty, llvm_ptr_ty], [IntrInaccessibleMemOrArgMemOnly] >;
3855
3855
def int_aarch64_sme_ldr_zt : SME_LDR_STR_ZT_Intrinsic;
3856
3856
def int_aarch64_sme_str_zt : SME_LDR_STR_ZT_Intrinsic;
3857
3857
3858
3858
//
3859
3859
// Zero ZT0
3860
3860
//
3861
- def int_aarch64_sme_zero_zt : DefaultAttrsIntrinsic<[], [llvm_i32_ty], [ImmArg<ArgIndex<0>>, IntrWriteMem]>;
3861
+ def int_aarch64_sme_zero_zt : DefaultAttrsIntrinsic<[], [llvm_i32_ty], [ImmArg<ArgIndex<0>>, IntrInaccessibleMemOnly, IntrWriteMem]>;
3862
3862
3863
3863
//
3864
3864
// Lookup table expand one register
3865
3865
//
3866
3866
def int_aarch64_sme_luti2_lane_zt
3867
3867
: DefaultAttrsIntrinsic<[llvm_anyvector_ty], [llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3868
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3868
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3869
3869
def int_aarch64_sme_luti4_lane_zt
3870
3870
: DefaultAttrsIntrinsic<[llvm_anyvector_ty], [llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3871
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3871
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3872
3872
3873
3873
// Lookup table expand two registers
3874
3874
//
3875
3875
def int_aarch64_sme_luti2_lane_zt_x2
3876
3876
: DefaultAttrsIntrinsic<[llvm_anyvector_ty, LLVMMatchType<0>], [llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3877
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3877
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3878
3878
def int_aarch64_sme_luti4_lane_zt_x2
3879
3879
: DefaultAttrsIntrinsic<[llvm_anyvector_ty, LLVMMatchType<0>], [llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3880
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3881
-
3880
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3881
+
3882
3882
//
3883
3883
// Lookup table expand four registers
3884
3884
//
3885
3885
def int_aarch64_sme_luti2_lane_zt_x4
3886
3886
: DefaultAttrsIntrinsic<[llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>],
3887
3887
[llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3888
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3888
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3889
3889
def int_aarch64_sme_luti4_lane_zt_x4
3890
3890
: DefaultAttrsIntrinsic<[llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>],
3891
3891
[llvm_i32_ty, llvm_nxv16i8_ty, llvm_i32_ty],
3892
- [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrReadMem]>;
3892
+ [ImmArg<ArgIndex<0>>, ImmArg<ArgIndex<2>>, IntrInaccessibleMemOnly, IntrReadMem]>;
3893
3893
3894
3894
def int_aarch64_sme_luti4_zt_x4
3895
3895
: DefaultAttrsIntrinsic<[llvm_anyvector_ty, LLVMMatchType<0>, LLVMMatchType<0>, LLVMMatchType<0>],
3896
3896
[llvm_i32_ty, llvm_nxv16i8_ty, llvm_nxv16i8_ty],
3897
- [ImmArg<ArgIndex<0>>, IntrNoMem, IntrHasSideEffects ]>;
3897
+ [ImmArg<ArgIndex<0>>, IntrInaccessibleMemOnly, IntrReadMem ]>;
3898
3898
3899
3899
3900
3900
//
0 commit comments