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