blob: acd2f73acc7ee07ce61fa4ea73b0c0020a619c66 [file] [edit]
spv.longVectorMatMul.comp
// Module Version 10300
// Generated by (magic number): 8000b
// Id's are bound by 54
Capability Shader
Capability Float16
Capability StorageUniformBufferBlock16
Capability StorageBuffer8BitAccess
Capability VulkanMemoryModelKHR
Capability CooperativeVectorNV
Capability LongVectorEXT
Extension "SPV_EXT_long_vector"
Extension "SPV_KHR_8bit_storage"
Extension "SPV_KHR_vulkan_memory_model"
Extension "SPV_NV_cooperative_vector"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical VulkanKHR
EntryPoint GLCompute 4 "main"
ExecutionMode 4 LocalSize 64 1 1
Source GLSL 450
SourceExtension "GL_EXT_buffer_reference"
SourceExtension "GL_EXT_long_vector"
SourceExtension "GL_EXT_nonuniform_qualifier"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
SourceExtension "GL_KHR_memory_scope_semantics"
SourceExtension "GL_NV_cooperative_vector"
Name 4 "main"
Name 9 "v7"
Name 16 "cv7"
Name 22 "tempArg"
Name 28 "MatrixBuf"
MemberName 28(MatrixBuf) 0 "matrixData"
Name 30 "matrixBuf"
Name 38 "cv8"
Name 42 "v8"
Name 51 "MatrixBuf2"
MemberName 51(MatrixBuf2) 0 "matrixData"
Name 53 "matrixBuf2"
Decorate 27 ArrayStride 2
Decorate 28(MatrixBuf) Block
MemberDecorate 28(MatrixBuf) 0 Offset 0
Decorate 30(matrixBuf) Binding 0
Decorate 30(matrixBuf) DescriptorSet 0
Decorate 48 BuiltIn WorkgroupSize
Decorate 50 ArrayStride 1
Decorate 51(MatrixBuf2) Block
MemberDecorate 51(MatrixBuf2) 0 Offset 0
Decorate 53(matrixBuf2) Binding 0
Decorate 53(matrixBuf2) DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 20
8: TypePointer Function 7(fvec)
10: 6(float) Constant 1065353216
11: 7(fvec) ConstantComposite 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10
12: TypeInt 32 0
13: 12(int) Constant 20
14: TypeCooperativeVectorNV 6(float) 13
15: TypePointer Function 14
19: 12(int) Constant 100
20: TypeCooperativeVectorNV 6(float) 19
21: TypePointer Function 20
24: TypeInt 32 1
25: 24(int) Constant 0
26: TypeFloat 16
27: TypeRuntimeArray 26(float16_t)
28(MatrixBuf): TypeStruct 27
29: TypePointer StorageBuffer 28(MatrixBuf)
30(matrixBuf): 29(ptr) Variable StorageBuffer
31: TypePointer StorageBuffer 27
33: 12(int) Constant 11
34: TypeBool
35: 34(bool) ConstantFalse
36: 12(int) Constant 300
40: TypeVector 6(float) 100
41: TypePointer Function 40(fvec)
45: TypeVector 12(int) 3
46: 12(int) Constant 64
47: 12(int) Constant 1
48: 45(ivec3) ConstantComposite 46 47 47
49: TypeInt 8 1
50: TypeRuntimeArray 49(int8_t)
51(MatrixBuf2): TypeStruct 50
52: TypePointer StorageBuffer 51(MatrixBuf2)
53(matrixBuf2): 52(ptr) Variable StorageBuffer
4(main): 2 Function None 3
5: Label
9(v7): 8(ptr) Variable Function
16(cv7): 15(ptr) Variable Function
22(tempArg): 21(ptr) Variable Function
38(cv8): 21(ptr) Variable Function
42(v8): 41(ptr) Variable Function
Store 9(v7) 11
17: 7(fvec) Load 9(v7)
18: 14 Bitcast 17
Store 16(cv7) 18
23: 14 Load 16(cv7)
32: 31(ptr) AccessChain 30(matrixBuf) 25
37: 20 CooperativeVectorMatrixMulNV 23 25 32 33 25 19 13 25 35 36
Store 22(tempArg) 37
39: 20 Load 22(tempArg)
Store 38(cv8) 39
43: 20 Load 38(cv8)
44: 40(fvec) Bitcast 43
Store 42(v8) 44
Return
FunctionEnd