Implement support for GL_KHR_cooperative_matrix extension
This commit is contained in:
parent
91a97b4c69
commit
808c7ed17c
40 changed files with 8227 additions and 5733 deletions
|
|
@ -1,10 +1,11 @@
|
|||
spv.intcoopmat.comp
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 8000b
|
||||
// Id's are bound by 262
|
||||
// Id's are bound by 286
|
||||
|
||||
Capability Shader
|
||||
Capability Float16
|
||||
Capability Int16
|
||||
Capability Int8
|
||||
Capability StorageBuffer8BitAccess
|
||||
Capability VulkanMemoryModelKHR
|
||||
|
|
@ -72,18 +73,22 @@ spv.intcoopmat.comp
|
|||
Name 207 "tempArg"
|
||||
Name 212 "shmatrix"
|
||||
Name 217 "ms"
|
||||
Name 225 "miC"
|
||||
Name 226 "muC"
|
||||
Name 231 "iarr"
|
||||
Name 236 "iarr2"
|
||||
Name 241 "uarr"
|
||||
Name 246 "uarr2"
|
||||
Name 251 "S"
|
||||
MemberName 251(S) 0 "a"
|
||||
MemberName 251(S) 1 "b"
|
||||
MemberName 251(S) 2 "c"
|
||||
Name 256 "SC"
|
||||
Name 261 "scm"
|
||||
Name 224 "i16"
|
||||
Name 230 "u16"
|
||||
Name 233 "tempArg"
|
||||
Name 239 "tempArg"
|
||||
Name 249 "miC"
|
||||
Name 250 "muC"
|
||||
Name 255 "iarr"
|
||||
Name 260 "iarr2"
|
||||
Name 265 "uarr"
|
||||
Name 270 "uarr2"
|
||||
Name 275 "S"
|
||||
MemberName 275(S) 0 "a"
|
||||
MemberName 275(S) 1 "b"
|
||||
MemberName 275(S) 2 "c"
|
||||
Name 280 "SC"
|
||||
Name 285 "scm"
|
||||
Decorate 83 ArrayStride 4
|
||||
Decorate 84 ArrayStride 4
|
||||
MemberDecorate 85(Block) 0 Offset 0
|
||||
|
|
@ -105,8 +110,8 @@ spv.intcoopmat.comp
|
|||
Decorate 108(block8) DescriptorSet 0
|
||||
Decorate 108(block8) Binding 0
|
||||
Decorate 156(Y) SpecId 0
|
||||
Decorate 223 BuiltIn WorkgroupSize
|
||||
Decorate 256(SC) SpecId 2
|
||||
Decorate 247 BuiltIn WorkgroupSize
|
||||
Decorate 280(SC) SpecId 2
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeInt 8 1
|
||||
|
|
@ -196,47 +201,57 @@ spv.intcoopmat.comp
|
|||
212(shmatrix): 211(ptr) Variable Workgroup
|
||||
213: 7(int) Constant 2
|
||||
214: TypePointer Workgroup 208(ivec4)
|
||||
221: TypeVector 7(int) 3
|
||||
222: 7(int) Constant 64
|
||||
223: 221(ivec3) ConstantComposite 222 100 100
|
||||
224: TypePointer Private 166
|
||||
225(miC): 224(ptr) Variable Private
|
||||
226(muC): 162(ptr) Variable Private
|
||||
227: 7(int) SpecConstantOp 5362 166
|
||||
228: 72(int) SpecConstantOp 128 227 76
|
||||
229: TypeArray 72(int) 228
|
||||
230: TypePointer Private 229
|
||||
231(iarr): 230(ptr) Variable Private
|
||||
232: 7(int) SpecConstantOp 5362 166
|
||||
233: 72(int) SpecConstantOp 128 232 76
|
||||
234: TypeArray 72(int) 233
|
||||
235: TypePointer Private 234
|
||||
236(iarr2): 235(ptr) Variable Private
|
||||
237: 7(int) SpecConstantOp 5362 158
|
||||
238: 72(int) SpecConstantOp 128 237 76
|
||||
239: TypeArray 72(int) 238
|
||||
240: TypePointer Private 239
|
||||
241(uarr): 240(ptr) Variable Private
|
||||
242: 7(int) SpecConstantOp 5362 158
|
||||
243: 72(int) SpecConstantOp 128 242 76
|
||||
244: TypeArray 72(int) 243
|
||||
245: TypePointer Private 244
|
||||
246(uarr2): 245(ptr) Variable Private
|
||||
247: TypeCooperativeMatrixNV 72(int) 8 157(Z) 9
|
||||
248: 247 ConstantComposite 73
|
||||
249: 16(int8_t) Constant 1
|
||||
250: 17 ConstantComposite 249
|
||||
251(S): TypeStruct 72(int) 72(int) 72(int)
|
||||
252: 72(int) Constant 12
|
||||
253: 72(int) Constant 23
|
||||
254: 72(int) Constant 34
|
||||
255: 251(S) ConstantComposite 252 253 254
|
||||
256(SC): 72(int) SpecConstant 1
|
||||
257: TypeCooperativeMatrixNV 7(int) 8 256(SC) 256(SC)
|
||||
258: TypeArray 257 256(SC)
|
||||
259: TypeArray 258 256(SC)
|
||||
260: TypePointer Private 259
|
||||
261(scm): 260(ptr) Variable Private
|
||||
221: TypeInt 16 1
|
||||
222: TypeCooperativeMatrixNV 221(int16_t) 8 32 9
|
||||
223: TypePointer Function 222
|
||||
225:221(int16_t) Constant 0
|
||||
226: 222 ConstantComposite 225
|
||||
227: TypeInt 16 0
|
||||
228: TypeCooperativeMatrixNV 227(int16_t) 8 32 9
|
||||
229: TypePointer Function 228
|
||||
231:227(int16_t) Constant 0
|
||||
232: 228 ConstantComposite 231
|
||||
245: TypeVector 7(int) 3
|
||||
246: 7(int) Constant 64
|
||||
247: 245(ivec3) ConstantComposite 246 100 100
|
||||
248: TypePointer Private 166
|
||||
249(miC): 248(ptr) Variable Private
|
||||
250(muC): 162(ptr) Variable Private
|
||||
251: 7(int) SpecConstantOp 5362 166
|
||||
252: 72(int) SpecConstantOp 128 251 76
|
||||
253: TypeArray 72(int) 252
|
||||
254: TypePointer Private 253
|
||||
255(iarr): 254(ptr) Variable Private
|
||||
256: 7(int) SpecConstantOp 5362 166
|
||||
257: 72(int) SpecConstantOp 128 256 76
|
||||
258: TypeArray 72(int) 257
|
||||
259: TypePointer Private 258
|
||||
260(iarr2): 259(ptr) Variable Private
|
||||
261: 7(int) SpecConstantOp 5362 158
|
||||
262: 72(int) SpecConstantOp 128 261 76
|
||||
263: TypeArray 72(int) 262
|
||||
264: TypePointer Private 263
|
||||
265(uarr): 264(ptr) Variable Private
|
||||
266: 7(int) SpecConstantOp 5362 158
|
||||
267: 72(int) SpecConstantOp 128 266 76
|
||||
268: TypeArray 72(int) 267
|
||||
269: TypePointer Private 268
|
||||
270(uarr2): 269(ptr) Variable Private
|
||||
271: TypeCooperativeMatrixNV 72(int) 8 157(Z) 9
|
||||
272: 271 ConstantComposite 73
|
||||
273: 16(int8_t) Constant 1
|
||||
274: 17 ConstantComposite 273
|
||||
275(S): TypeStruct 72(int) 72(int) 72(int)
|
||||
276: 72(int) Constant 12
|
||||
277: 72(int) Constant 23
|
||||
278: 72(int) Constant 34
|
||||
279: 275(S) ConstantComposite 276 277 278
|
||||
280(SC): 72(int) SpecConstant 1
|
||||
281: TypeCooperativeMatrixNV 7(int) 8 280(SC) 280(SC)
|
||||
282: TypeArray 281 280(SC)
|
||||
283: TypeArray 282 280(SC)
|
||||
284: TypePointer Private 283
|
||||
285(scm): 284(ptr) Variable Private
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
35(mu): 34(ptr) Variable Function
|
||||
|
|
@ -264,6 +279,10 @@ spv.intcoopmat.comp
|
|||
193(param): 18(ptr) Variable Function
|
||||
207(tempArg): 38(ptr) Variable Function
|
||||
217(ms): 38(ptr) Variable Function
|
||||
224(i16): 223(ptr) Variable Function
|
||||
230(u16): 229(ptr) Variable Function
|
||||
233(tempArg): 223(ptr) Variable Function
|
||||
239(tempArg): 229(ptr) Variable Function
|
||||
Store 35(mu) 36
|
||||
Store 39(mi) 41
|
||||
42: 33 Load 35(mu)
|
||||
|
|
@ -400,6 +419,24 @@ spv.intcoopmat.comp
|
|||
219: 37 Load 217(ms)
|
||||
220: 214(ptr) AccessChain 212(shmatrix) 100
|
||||
CooperativeMatrixStoreNV 220 219 213 93 MakePointerAvailableKHR NonPrivatePointerKHR 213
|
||||
Store 224(i16) 226
|
||||
Store 230(u16) 232
|
||||
234: 214(ptr) AccessChain 212(shmatrix) 100
|
||||
235: 222 CooperativeMatrixLoadNV 234 213 93 MakePointerVisibleKHR NonPrivatePointerKHR 213
|
||||
Store 233(tempArg) 235
|
||||
236: 222 Load 233(tempArg)
|
||||
Store 224(i16) 236
|
||||
237: 222 Load 224(i16)
|
||||
238: 214(ptr) AccessChain 212(shmatrix) 100
|
||||
CooperativeMatrixStoreNV 238 237 213 93 MakePointerAvailableKHR NonPrivatePointerKHR 213
|
||||
240: 214(ptr) AccessChain 212(shmatrix) 100
|
||||
241: 228 CooperativeMatrixLoadNV 240 213 93 MakePointerVisibleKHR NonPrivatePointerKHR 213
|
||||
Store 239(tempArg) 241
|
||||
242: 228 Load 239(tempArg)
|
||||
Store 230(u16) 242
|
||||
243: 228 Load 230(u16)
|
||||
244: 214(ptr) AccessChain 212(shmatrix) 100
|
||||
CooperativeMatrixStoreNV 244 243 213 93 MakePointerAvailableKHR NonPrivatePointerKHR 213
|
||||
Return
|
||||
FunctionEnd
|
||||
14(ineg(i81;): 10 Function None 12
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue