| 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 |
| MemberDecorate 69(Block) 0 Offset 0 |
| MemberDecorate 69(Block) 1 Offset 4194304 |
| Decorate 69(Block) Block |
| Decorate 71(block) DescriptorSet 0 |
| Decorate 71(block) Binding 0 |
| Decorate 81 ArrayStride 2 |
| Decorate 83 ArrayStride 2 |
| MemberDecorate 85(Block16) 0 Offset 0 |
| MemberDecorate 85(Block16) 1 Offset 2097152 |
| MemberDecorate 85(Block16) 2 Offset 2097160 |
| Decorate 85(Block16) Block |
| Decorate 86 ArrayStride 4 |
| Decorate 87 ArrayStride 4 |
| MemberDecorate 88(Block) 0 Offset 0 |
| MemberDecorate 88(Block) 1 Offset 4194304 |
| Decorate 88(Block) Block |
| Decorate 90(block16) DescriptorSet 0 |
| Decorate 90(block16) Binding 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 |