403 lines
21 KiB
Plaintext
403 lines
21 KiB
Plaintext
spv.coopmatKHR.comp
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 250
|
|
|
|
Capability Shader
|
|
Capability Float16
|
|
Capability Int16
|
|
Capability Int8
|
|
Capability StorageUniformBufferBlock16
|
|
Capability VulkanMemoryModelKHR
|
|
Capability PhysicalStorageBufferAddressesEXT
|
|
Capability CooperativeMatrixKHR
|
|
Extension "SPV_KHR_16bit_storage"
|
|
Extension "SPV_KHR_cooperative_matrix"
|
|
Extension "SPV_KHR_physical_storage_buffer"
|
|
Extension "SPV_KHR_storage_buffer_storage_class"
|
|
Extension "SPV_KHR_vulkan_memory_model"
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel PhysicalStorageBuffer64EXT VulkanKHR
|
|
EntryPoint GLCompute 4 "main"
|
|
ExecutionMode 4 LocalSize 64 1 1
|
|
Source GLSL 450
|
|
SourceExtension "GL_EXT_buffer_reference"
|
|
SourceExtension "GL_EXT_shader_explicit_arithmetic_types"
|
|
SourceExtension "GL_KHR_cooperative_matrix"
|
|
SourceExtension "GL_KHR_memory_scope_semantics"
|
|
Name 4 "main"
|
|
Name 15 "f16(f161;"
|
|
Name 14 "m"
|
|
Name 22 "f32(f1;"
|
|
Name 21 "m"
|
|
Name 35 "m"
|
|
Name 53 "m2"
|
|
Name 57 "x"
|
|
Name 65 "tempArg"
|
|
Name 69 "Block"
|
|
MemberName 69(Block) 0 "y"
|
|
MemberName 69(Block) 1 "x"
|
|
Name 71 "block"
|
|
Name 80 "tempArg"
|
|
Name 85 "Block16"
|
|
MemberName 85(Block16) 0 "y"
|
|
MemberName 85(Block16) 1 "x"
|
|
MemberName 85(Block16) 2 "b"
|
|
Name 88 "Block"
|
|
MemberName 88(Block) 0 "y"
|
|
MemberName 88(Block) 1 "x"
|
|
Name 90 "block16"
|
|
Name 97 "tempArg"
|
|
Name 110 "D"
|
|
Name 114 "A"
|
|
Name 118 "B"
|
|
Name 120 "C"
|
|
Name 124 "l"
|
|
Name 128 "Y"
|
|
Name 129 "Z"
|
|
Name 132 "F"
|
|
Name 137 "a"
|
|
Name 141 "md1"
|
|
Name 152 "mC2"
|
|
Name 157 "tempArg"
|
|
Name 163 "tempArg"
|
|
Name 169 "p1"
|
|
Name 170 "param"
|
|
Name 173 "p2"
|
|
Name 174 "param"
|
|
Name 188 "tempArg"
|
|
Name 193 "shmatrix"
|
|
Name 197 "ms"
|
|
Name 204 "ms8A"
|
|
Name 208 "ms8B"
|
|
Name 212 "ms8C"
|
|
Name 227 "m16"
|
|
Name 233 "mC"
|
|
Name 234 "F"
|
|
Name 239 "S"
|
|
MemberName 239(S) 0 "a"
|
|
MemberName 239(S) 1 "b"
|
|
MemberName 239(S) 2 "c"
|
|
Name 244 "SC"
|
|
Name 249 "scm"
|
|
Decorate 67 ArrayStride 4
|
|
Decorate 68 ArrayStride 4
|
|
Decorate 69(Block) Block
|
|
MemberDecorate 69(Block) 0 Offset 0
|
|
MemberDecorate 69(Block) 1 Offset 4194304
|
|
Decorate 71(block) Binding 0
|
|
Decorate 71(block) DescriptorSet 0
|
|
Decorate 81 ArrayStride 2
|
|
Decorate 83 ArrayStride 2
|
|
Decorate 85(Block16) Block
|
|
MemberDecorate 85(Block16) 0 Offset 0
|
|
MemberDecorate 85(Block16) 1 Offset 2097152
|
|
MemberDecorate 85(Block16) 2 Offset 2097160
|
|
Decorate 86 ArrayStride 4
|
|
Decorate 87 ArrayStride 4
|
|
Decorate 88(Block) Block
|
|
MemberDecorate 88(Block) 0 Offset 0
|
|
MemberDecorate 88(Block) 1 Offset 4194304
|
|
Decorate 90(block16) Binding 0
|
|
Decorate 90(block16) DescriptorSet 0
|
|
Decorate 128(Y) SpecId 0
|
|
Decorate 232 BuiltIn WorkgroupSize
|
|
Decorate 234(F) SpecId 1
|
|
Decorate 244(SC) SpecId 2
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeFloat 16
|
|
7: TypeInt 32 0
|
|
8: 7(int) Constant 3
|
|
9: 7(int) Constant 8
|
|
10: 7(int) Constant 2
|
|
11: TypeCooperativeMatrixKHR 6(float16_t) 8 9 9 10
|
|
12: TypePointer Function 11
|
|
13: TypeFunction 11 12(ptr)
|
|
17: TypeFloat 32
|
|
18: TypeCooperativeMatrixKHR 17(float) 8 9 9 10
|
|
19: TypePointer Function 18
|
|
20: TypeFunction 18 19(ptr)
|
|
32: 7(int) Constant 16
|
|
33: TypeCooperativeMatrixKHR 17(float) 8 32 9 10
|
|
34: TypePointer Function 33
|
|
36: 17(float) Constant 0
|
|
37: 33 ConstantComposite 36
|
|
46: 17(float) Constant 1073741824
|
|
51: TypeCooperativeMatrixKHR 6(float16_t) 8 32 9 10
|
|
52: TypePointer Function 51
|
|
56: TypePointer Function 17(float)
|
|
58: TypeInt 32 1
|
|
59: 58(int) Constant 1
|
|
62: 58(int) Constant 0
|
|
66: 7(int) Constant 1048576
|
|
67: TypeArray 17(float) 66
|
|
68: TypeRuntimeArray 17(float)
|
|
69(Block): TypeStruct 67 68
|
|
70: TypePointer StorageBuffer 69(Block)
|
|
71(block): 70(ptr) Variable StorageBuffer
|
|
72: 7(int) Constant 5
|
|
73: TypePointer StorageBuffer 17(float)
|
|
75: 7(int) Constant 128
|
|
81: TypeArray 6(float16_t) 66
|
|
82: 7(int) Constant 1
|
|
83: TypeArray 6(float16_t) 82
|
|
TypeForwardPointer 84 PhysicalStorageBufferEXT
|
|
85(Block16): TypeStruct 81 83 84
|
|
86: TypeArray 17(float) 66
|
|
87: TypeRuntimeArray 17(float)
|
|
88(Block): TypeStruct 86 87
|
|
84: TypePointer PhysicalStorageBufferEXT 88(Block)
|
|
89: TypePointer StorageBuffer 85(Block16)
|
|
90(block16): 89(ptr) Variable StorageBuffer
|
|
91: TypePointer StorageBuffer 6(float16_t)
|
|
98: 58(int) Constant 2
|
|
99: TypePointer StorageBuffer 84(ptr)
|
|
102: TypePointer PhysicalStorageBufferEXT 17(float)
|
|
111: 7(int) Constant 0
|
|
112: TypeCooperativeMatrixKHR 6(float16_t) 8 32 9 111
|
|
113: TypePointer Function 112
|
|
116: TypeCooperativeMatrixKHR 6(float16_t) 8 9 9 82
|
|
117: TypePointer Function 116
|
|
123: TypePointer Function 58(int)
|
|
127: 58(int) Constant 8
|
|
128(Y): 58(int) SpecConstant 2
|
|
129(Z): 58(int) SpecConstantOp 132 127 128(Y)
|
|
130: TypeCooperativeMatrixKHR 6(float16_t) 8 129(Z) 129(Z) 10
|
|
131: TypePointer Function 130
|
|
133:6(float16_t) Constant 0
|
|
134: 130 ConstantComposite 133
|
|
135: TypeArray 33 72
|
|
136: TypePointer Function 135
|
|
138: 58(int) Constant 3
|
|
139: 17(float) Constant 1065353216
|
|
145: 58(int) Constant 1234
|
|
149: TypeCooperativeMatrixKHR 6(float16_t) 8 129(Z) 9 10
|
|
150: TypeArray 149 8
|
|
151: TypePointer Private 150
|
|
152(mC2): 151(ptr) Variable Private
|
|
153: TypePointer Private 149
|
|
177: 11 ConstantComposite 133
|
|
178: 18 ConstantComposite 36
|
|
182:6(float16_t) Constant 16384
|
|
185: 17(float) Constant 1082130432
|
|
189: TypeVector 7(int) 4
|
|
190: 7(int) Constant 32
|
|
191: TypeArray 189(ivec4) 190
|
|
192: TypePointer Workgroup 191
|
|
193(shmatrix): 192(ptr) Variable Workgroup
|
|
194: TypePointer Workgroup 189(ivec4)
|
|
201: TypeInt 8 1
|
|
202: TypeCooperativeMatrixKHR 201(int8_t) 8 9 9 111
|
|
203: TypePointer Function 202
|
|
206: TypeCooperativeMatrixKHR 201(int8_t) 8 9 9 82
|
|
207: TypePointer Function 206
|
|
210: TypeCooperativeMatrixKHR 201(int8_t) 8 9 9 10
|
|
211: TypePointer Function 210
|
|
222: 58(int) Constant 16
|
|
224: TypeInt 16 1
|
|
225: TypeCooperativeMatrixKHR 224(int16_t) 8 9 9 111
|
|
226: TypePointer Function 225
|
|
230: TypeVector 7(int) 3
|
|
231: 7(int) Constant 64
|
|
232: 230(ivec3) ConstantComposite 231 82 82
|
|
233(mC): 153(ptr) Variable Private
|
|
234(F): 17(float) SpecConstant 1077936128
|
|
235: TypeCooperativeMatrixKHR 17(float) 8 129(Z) 9 10
|
|
236: 235 ConstantComposite 36
|
|
237:6(float16_t) Constant 15360
|
|
238: 11 ConstantComposite 237
|
|
239(S): TypeStruct 58(int) 58(int) 58(int)
|
|
240: 58(int) Constant 12
|
|
241: 58(int) Constant 23
|
|
242: 58(int) Constant 34
|
|
243: 239(S) ConstantComposite 240 241 242
|
|
244(SC): 58(int) SpecConstant 1
|
|
245: TypeCooperativeMatrixKHR 6(float16_t) 8 244(SC) 244(SC) 10
|
|
246: TypeArray 245 244(SC)
|
|
247: TypeArray 246 244(SC)
|
|
248: TypePointer Private 247
|
|
249(scm): 248(ptr) Variable Private
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
35(m): 34(ptr) Variable Function
|
|
53(m2): 52(ptr) Variable Function
|
|
57(x): 56(ptr) Variable Function
|
|
65(tempArg): 34(ptr) Variable Function
|
|
80(tempArg): 52(ptr) Variable Function
|
|
97(tempArg): 34(ptr) Variable Function
|
|
110(D): 34(ptr) Variable Function
|
|
114(A): 113(ptr) Variable Function
|
|
118(B): 117(ptr) Variable Function
|
|
120(C): 34(ptr) Variable Function
|
|
124(l): 123(ptr) Variable Function
|
|
132(F): 131(ptr) Variable Function
|
|
137(a): 136(ptr) Variable Function
|
|
141(md1): 56(ptr) Variable Function
|
|
157(tempArg): 34(ptr) Variable Function
|
|
163(tempArg): 52(ptr) Variable Function
|
|
169(p1): 12(ptr) Variable Function
|
|
170(param): 12(ptr) Variable Function
|
|
173(p2): 19(ptr) Variable Function
|
|
174(param): 19(ptr) Variable Function
|
|
188(tempArg): 52(ptr) Variable Function
|
|
197(ms): 52(ptr) Variable Function
|
|
204(ms8A): 203(ptr) Variable Function
|
|
208(ms8B): 207(ptr) Variable Function
|
|
212(ms8C): 211(ptr) Variable Function
|
|
227(m16): 226(ptr) Variable Function
|
|
Store 35(m) 37
|
|
38: 33 Load 35(m)
|
|
39: 33 Load 35(m)
|
|
40: 33 FAdd 38 39
|
|
Store 35(m) 40
|
|
41: 33 Load 35(m)
|
|
42: 33 Load 35(m)
|
|
43: 33 FSub 41 42
|
|
Store 35(m) 43
|
|
44: 33 Load 35(m)
|
|
45: 33 FNegate 44
|
|
Store 35(m) 45
|
|
47: 33 Load 35(m)
|
|
48: 33 MatrixTimesScalar 47 46
|
|
Store 35(m) 48
|
|
49: 33 Load 35(m)
|
|
50: 33 MatrixTimesScalar 49 46
|
|
Store 35(m) 50
|
|
54: 33 Load 35(m)
|
|
55: 51 FConvert 54
|
|
Store 53(m2) 55
|
|
60: 56(ptr) AccessChain 35(m) 59
|
|
61: 17(float) Load 60
|
|
Store 57(x) 61
|
|
63: 17(float) Load 57(x)
|
|
64: 56(ptr) AccessChain 35(m) 62
|
|
Store 64 63
|
|
74: 73(ptr) AccessChain 71(block) 59 32
|
|
76: 33 CooperativeMatrixLoadKHR 74 62 75 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
Store 65(tempArg) 76
|
|
77: 33 Load 65(tempArg)
|
|
Store 35(m) 77
|
|
78: 33 Load 35(m)
|
|
79: 73(ptr) AccessChain 71(block) 59 32
|
|
CooperativeMatrixStoreKHR 79 78 62 75 MakePointerAvailableKHR NonPrivatePointerKHR 72
|
|
92: 91(ptr) AccessChain 90(block16) 59 32
|
|
93: 51 CooperativeMatrixLoadKHR 92 62 75 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
Store 80(tempArg) 93
|
|
94: 51 Load 80(tempArg)
|
|
Store 53(m2) 94
|
|
95: 51 Load 53(m2)
|
|
96: 91(ptr) AccessChain 90(block16) 59 32
|
|
CooperativeMatrixStoreKHR 96 95 62 75 MakePointerAvailableKHR NonPrivatePointerKHR 72
|
|
100: 99(ptr) AccessChain 90(block16) 98
|
|
101: 84(ptr) Load 100 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
103: 102(ptr) AccessChain 101 59 32
|
|
104: 33 CooperativeMatrixLoadKHR 103 62 75 Aligned MakePointerVisibleKHR NonPrivatePointerKHR 16 72
|
|
Store 97(tempArg) 104
|
|
105: 33 Load 97(tempArg)
|
|
Store 35(m) 105
|
|
106: 33 Load 35(m)
|
|
107: 99(ptr) AccessChain 90(block16) 98
|
|
108: 84(ptr) Load 107 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
109: 102(ptr) AccessChain 108 59 32
|
|
CooperativeMatrixStoreKHR 109 106 62 75 Aligned MakePointerAvailableKHR NonPrivatePointerKHR 16 72
|
|
115: 112 Load 114(A)
|
|
119: 116 Load 118(B)
|
|
121: 33 Load 120(C)
|
|
122: 33 CooperativeMatrixMulAddKHR 115 119 121
|
|
Store 110(D) 122
|
|
125: 7(int) CooperativeMatrixLengthKHR 33
|
|
126: 58(int) Bitcast 125
|
|
Store 124(l) 126
|
|
Store 132(F) 134
|
|
140: 56(ptr) AccessChain 137(a) 138 62
|
|
Store 140 139
|
|
Store 141(md1) 36
|
|
142: 33 Load 35(m)
|
|
143: 33 Load 35(m)
|
|
144: 33 FAdd 143 142
|
|
Store 35(m) 144
|
|
146: 17(float) CompositeExtract 144 1234
|
|
147: 17(float) Load 141(md1)
|
|
148: 17(float) FAdd 147 146
|
|
Store 141(md1) 148
|
|
154: 153(ptr) AccessChain 152(mC2) 98
|
|
155: 149 Load 154
|
|
156: 153(ptr) AccessChain 152(mC2) 59
|
|
Store 156 155
|
|
158: 73(ptr) AccessChain 71(block) 62 32
|
|
159: 33 CooperativeMatrixLoadKHR 158 62 75 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
Store 157(tempArg) 159
|
|
160: 33 Load 157(tempArg)
|
|
Store 35(m) 160
|
|
161: 33 Load 35(m)
|
|
162: 73(ptr) AccessChain 71(block) 62 32
|
|
CooperativeMatrixStoreKHR 162 161 62 75 MakePointerAvailableKHR NonPrivatePointerKHR 72
|
|
164: 91(ptr) AccessChain 90(block16) 62 32
|
|
165: 51 CooperativeMatrixLoadKHR 164 62 75 MakePointerVisibleKHR NonPrivatePointerKHR 72
|
|
Store 163(tempArg) 165
|
|
166: 51 Load 163(tempArg)
|
|
Store 53(m2) 166
|
|
167: 51 Load 53(m2)
|
|
168: 91(ptr) AccessChain 90(block16) 62 32
|
|
CooperativeMatrixStoreKHR 168 167 62 75 MakePointerAvailableKHR NonPrivatePointerKHR 72
|
|
171: 11 Load 169(p1)
|
|
Store 170(param) 171
|
|
172: 11 FunctionCall 15(f16(f161;) 170(param)
|
|
Store 169(p1) 172
|
|
175: 18 Load 173(p2)
|
|
Store 174(param) 175
|
|
176: 18 FunctionCall 22(f32(f1;) 174(param)
|
|
Store 173(p2) 176
|
|
Store 169(p1) 177
|
|
Store 173(p2) 178
|
|
179: 11 Load 169(p1)
|
|
180: 11 Load 169(p1)
|
|
181: 11 FDiv 180 179
|
|
Store 169(p1) 181
|
|
183: 11 Load 169(p1)
|
|
184: 11 MatrixTimesScalar 183 182
|
|
Store 169(p1) 184
|
|
186: 18 Load 173(p2)
|
|
187: 18 MatrixTimesScalar 186 185
|
|
Store 173(p2) 187
|
|
195: 194(ptr) AccessChain 193(shmatrix) 82
|
|
196: 51 CooperativeMatrixLoadKHR 195 62 10 MakePointerVisibleKHR NonPrivatePointerKHR 10
|
|
Store 188(tempArg) 196
|
|
198: 51 Load 188(tempArg)
|
|
Store 197(ms) 198
|
|
199: 51 Load 197(ms)
|
|
200: 194(ptr) AccessChain 193(shmatrix) 82
|
|
CooperativeMatrixStoreKHR 200 199 62 10 MakePointerAvailableKHR NonPrivatePointerKHR 10
|
|
205: 202 Load 204(ms8A)
|
|
209: 206 Load 208(ms8B)
|
|
213: 210 Load 212(ms8C)
|
|
214: 210 CooperativeMatrixMulAddKHR 205 209 213 ASignedComponentsKHR BSignedComponentsKHR CSignedComponentsKHR ResultSignedComponentsKHR
|
|
215: 202 Load 204(ms8A)
|
|
216: 206 Load 208(ms8B)
|
|
217: 210 Load 212(ms8C)
|
|
218: 210 CooperativeMatrixMulAddKHR 215 216 217 ASignedComponentsKHR BSignedComponentsKHR CSignedComponentsKHR ResultSignedComponentsKHR
|
|
219: 202 Load 204(ms8A)
|
|
220: 206 Load 208(ms8B)
|
|
221: 210 Load 212(ms8C)
|
|
223: 210 CooperativeMatrixMulAddKHR 219 220 221 ASignedComponentsKHR BSignedComponentsKHR CSignedComponentsKHR ResultSignedComponentsKHR SaturatingAccumulationKHR
|
|
228: 225 Load 227(m16)
|
|
229: 194(ptr) AccessChain 193(shmatrix) 82
|
|
CooperativeMatrixStoreKHR 229 228 62 10 MakePointerAvailableKHR NonPrivatePointerKHR 10
|
|
Return
|
|
FunctionEnd
|
|
15(f16(f161;): 11 Function None 13
|
|
14(m): 12(ptr) FunctionParameter
|
|
16: Label
|
|
24: 11 Load 14(m)
|
|
25: 11 FNegate 24
|
|
ReturnValue 25
|
|
FunctionEnd
|
|
22(f32(f1;): 18 Function None 20
|
|
21(m): 19(ptr) FunctionParameter
|
|
23: Label
|
|
28: 18 Load 21(m)
|
|
29: 18 FNegate 28
|
|
ReturnValue 29
|
|
FunctionEnd
|