@@ -783,6 +783,7 @@ def CreateHandle : DXILOp<57, createHandle> {
783
783
let arguments = [Int8Ty, Int32Ty, Int32Ty, Int1Ty];
784
784
let result = HandleTy;
785
785
let stages = [Stages<DXIL1_0, [all_stages]>, Stages<DXIL1_6, [removed]>];
786
+ let attributes = [Attributes<DXIL1_0, [ReadOnly]>];
786
787
}
787
788
788
789
def BufferLoad : DXILOp<68, bufferLoad> {
@@ -794,6 +795,7 @@ def BufferLoad : DXILOp<68, bufferLoad> {
794
795
[Overloads<DXIL1_0,
795
796
[ResRetHalfTy, ResRetFloatTy, ResRetInt16Ty, ResRetInt32Ty]>];
796
797
let stages = [Stages<DXIL1_0, [all_stages]>];
798
+ let attributes = [Attributes<DXIL1_0, [ReadOnly]>];
797
799
}
798
800
799
801
def BufferStore : DXILOp<69, bufferStore> {
@@ -822,6 +824,7 @@ def CheckAccessFullyMapped : DXILOp<71, checkAccessFullyMapped> {
822
824
let result = Int1Ty;
823
825
let overloads = [Overloads<DXIL1_0, [Int32Ty]>];
824
826
let stages = [Stages<DXIL1_0, [all_stages]>];
827
+ let attributes = [Attributes<DXIL1_0, [ReadOnly]>];
825
828
}
826
829
827
830
def Discard : DXILOp<82, discard> {
@@ -896,8 +899,8 @@ def Dot4AddI8Packed : DXILOp<163, dot4AddPacked> {
896
899
let intrinsics = [ IntrinSelect<int_dx_dot4add_i8packed> ];
897
900
let arguments = [Int32Ty, Int32Ty, Int32Ty];
898
901
let result = Int32Ty;
899
- let attributes = [Attributes<DXIL1_0, [ReadNone]>];
900
902
let stages = [Stages<DXIL1_0, [all_stages]>];
903
+ let attributes = [Attributes<DXIL1_0, [ReadNone]>];
901
904
}
902
905
903
906
def Dot4AddU8Packed : DXILOp<164, dot4AddPacked> {
@@ -906,22 +909,24 @@ def Dot4AddU8Packed : DXILOp<164, dot4AddPacked> {
906
909
let intrinsics = [ IntrinSelect<int_dx_dot4add_u8packed> ];
907
910
let arguments = [Int32Ty, Int32Ty, Int32Ty];
908
911
let result = Int32Ty;
909
- let attributes = [Attributes<DXIL1_0, [ReadNone]>];
910
912
let stages = [Stages<DXIL1_0, [all_stages]>];
913
+ let attributes = [Attributes<DXIL1_0, [ReadNone]>];
911
914
}
912
915
913
916
def AnnotateHandle : DXILOp<216, annotateHandle> {
914
917
let Doc = "annotate handle with resource properties";
915
918
let arguments = [HandleTy, ResPropsTy];
916
919
let result = HandleTy;
917
920
let stages = [Stages<DXIL1_6, [all_stages]>];
921
+ let attributes = [Attributes<DXIL1_0, [ReadNone]>];
918
922
}
919
923
920
924
def CreateHandleFromBinding : DXILOp<217, createHandleFromBinding> {
921
925
let Doc = "create resource handle from binding";
922
926
let arguments = [ResBindTy, Int32Ty, Int1Ty];
923
927
let result = HandleTy;
924
928
let stages = [Stages<DXIL1_6, [all_stages]>];
929
+ let attributes = [Attributes<DXIL1_0, [ReadNone]>];
925
930
}
926
931
927
932
def WaveActiveAnyTrue : DXILOp<113, waveAnyTrue> {
@@ -938,7 +943,6 @@ def WaveIsFirstLane : DXILOp<110, waveIsFirstLane> {
938
943
let arguments = [];
939
944
let result = Int1Ty;
940
945
let stages = [Stages<DXIL1_0, [all_stages]>];
941
- let attributes = [Attributes<DXIL1_0, [ReadNone]>];
942
946
}
943
947
944
948
def WaveReadLaneAt: DXILOp<117, waveReadLaneAt> {
@@ -948,7 +952,6 @@ def WaveReadLaneAt: DXILOp<117, waveReadLaneAt> {
948
952
let result = OverloadTy;
949
953
let overloads = [Overloads<DXIL1_0, [HalfTy, FloatTy, DoubleTy, Int1Ty, Int16Ty, Int32Ty, Int64Ty]>];
950
954
let stages = [Stages<DXIL1_0, [all_stages]>];
951
- let attributes = [Attributes<DXIL1_0, [ReadNone]>];
952
955
}
953
956
954
957
def WaveGetLaneIndex : DXILOp<111, waveGetLaneIndex> {
@@ -957,7 +960,7 @@ def WaveGetLaneIndex : DXILOp<111, waveGetLaneIndex> {
957
960
let arguments = [];
958
961
let result = Int32Ty;
959
962
let stages = [Stages<DXIL1_0, [all_stages]>];
960
- let attributes = [Attributes<DXIL1_0, [ReadNone ]>];
963
+ let attributes = [Attributes<DXIL1_0, [ReadOnly ]>];
961
964
}
962
965
963
966
def WaveAllBitCount : DXILOp<135, waveAllOp> {
@@ -966,7 +969,6 @@ def WaveAllBitCount : DXILOp<135, waveAllOp> {
966
969
let arguments = [Int1Ty];
967
970
let result = Int32Ty;
968
971
let stages = [Stages<DXIL1_0, [all_stages]>];
969
- let attributes = [Attributes<DXIL1_0, [ReadNone]>];
970
972
}
971
973
972
974
def Barrier : DXILOp<80, barrier> {
0 commit comments