@@ -69,21 +69,32 @@ spirv.func @cooperative_matrix_load_stride_i16(%ptr : !spirv.ptr<i32, StorageBuf
6969// CHECK-LABEL: @cooperative_matrix_store
7070spirv.func @cooperative_matrix_store (%ptr : !spirv.ptr <i32 , StorageBuffer >, %stride : i32 ,
7171 %m : !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >) " None" {
72- // CHECK: spirv.KHR.CooperativeMatrixStore {{%.*}}, {{%.*}}, {{%.*}}, RowMajor :
73- // CHECK-SAME: !spirv.ptr<i32, StorageBuffer>, !spirv.coopmatrix<8x16xi32, Workgroup, MatrixA>
74- spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , RowMajor :
75- !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >
72+ // CHECK: spirv.KHR.CooperativeMatrixStore {{%.*}}, {{%.*}}, {{%.*}}, < RowMajor> :
73+ // CHECK-SAME: !spirv.ptr<i32, StorageBuffer>, !spirv.coopmatrix<8x16xi32, Workgroup, MatrixA>, i32
74+ spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , < RowMajor > :
75+ !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >, i32
7676 spirv.Return
7777}
7878
7979// CHECK-LABEL: @cooperative_matrix_store_memoperand
8080spirv.func @cooperative_matrix_store_memoperand (%ptr : !spirv.ptr <i32 , StorageBuffer >,
8181 %m : !spirv.coopmatrix <8 x16 xi32 , Subgroup , MatrixB >,
8282 %stride : i32 ) " None" {
83- // CHECK: spirv.KHR.CooperativeMatrixStore {{%.*}}, {{%.*}}, {{%.*}}, ColumnMajor ["Volatile"] :
84- // CHECK-SAME: !spirv.ptr<i32, StorageBuffer>, !spirv.coopmatrix<8x16xi32, Subgroup, MatrixB>
85- spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , ColumnMajor [" Volatile" ] :
86- !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Subgroup , MatrixB >
83+ // CHECK: spirv.KHR.CooperativeMatrixStore {{%.*}}, {{%.*}}, {{%.*}}, <ColumnMajor>, <Volatile> :
84+ // CHECK-SAME: !spirv.ptr<i32, StorageBuffer>, !spirv.coopmatrix<8x16xi32, Subgroup, MatrixB>, i32
85+ spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , <ColumnMajor >, <Volatile > :
86+ !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Subgroup , MatrixB >, i32
87+ spirv.Return
88+ }
89+
90+ // CHECK-LABEL: @cooperative_matrix_store_stride_i16
91+ spirv.func @cooperative_matrix_store_stride_i16 (%ptr : !spirv.ptr <i32 , StorageBuffer >,
92+ %m : !spirv.coopmatrix <8 x16 xi32 , Subgroup , MatrixB >,
93+ %stride : i16 ) " None" {
94+ // CHECK: spirv.KHR.CooperativeMatrixStore {{%.*}}, {{%.*}}, {{%.*}}, <ColumnMajor> :
95+ // CHECK-SAME: !spirv.ptr<i32, StorageBuffer>, !spirv.coopmatrix<8x16xi32, Subgroup, MatrixB>, i16
96+ spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , <ColumnMajor > :
97+ !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Subgroup , MatrixB >, i16
8798 spirv.Return
8899}
89100
@@ -137,9 +148,9 @@ spirv.func @cooperative_matrix_store_missing_attr(%ptr : !spirv.ptr<i32, Storage
137148
138149spirv.func @cooperative_matrix_store_missing_attr (%ptr : !spirv.ptr <i32 , StorageBuffer >, %stride : i32 ,
139150 %m : !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >) " None" {
140- // expected-error @+1 {{expected valid keyword }}
151+ // expected-error @+1 {{expected '<' }}
141152 spirv.KHR.CooperativeMatrixStore %ptr , %m , %stride , :
142- !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >
153+ !spirv.ptr <i32 , StorageBuffer >, !spirv.coopmatrix <8 x16 xi32 , Workgroup , MatrixA >, i32
143154 spirv.Return
144155}
145156
@@ -148,8 +159,8 @@ spirv.func @cooperative_matrix_store_missing_attr(%ptr : !spirv.ptr<i32, Storage
148159spirv.func @cooperative_matrix_store_bad_object_type (%ptr : !spirv.ptr <i32 , StorageBuffer >,
149160 %stride : i32 ) " None" {
150161 // expected-error @+1 {{op operand #1 must be any SPIR-V cooperative matrix type}}
151- spirv.KHR.CooperativeMatrixStore %ptr , %stride , %stride , RowMajor :
152- !spirv.ptr <i32 , StorageBuffer >, i32
162+ spirv.KHR.CooperativeMatrixStore %ptr , %stride , %stride , < RowMajor > :
163+ !spirv.ptr <i32 , StorageBuffer >, i32 , i32
153164 spirv.Return
154165}
155166
0 commit comments