spv.qcom.coopmatConversion.1.comp // Module Version 10300 // Generated by (magic number): 8000b // Id's are bound by 279 Capability Shader Capability Float16 Capability Int8 Capability CooperativeMatrixConversionQCOM Capability VulkanMemoryModelKHR Capability CooperativeMatrixKHR Extension "SPV_KHR_cooperative_matrix" Extension "SPV_KHR_vulkan_memory_model" Extension "SPV_QCOM_cooperative_matrix_conversion" 1: ExtInstImport "GLSL.std.450" MemoryModel Logical VulkanKHR EntryPoint GLCompute 4 "main" ExecutionMode 4 LocalSize 64 2 2 Source GLSL 450 SourceExtension "GL_EXT_buffer_reference" SourceExtension "GL_EXT_control_flow_attributes" SourceExtension "GL_EXT_scalar_block_layout" SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float16" SourceExtension "GL_EXT_shader_explicit_arithmetic_types_float32" SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int32" SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int8" SourceExtension "GL_KHR_cooperative_matrix" SourceExtension "GL_KHR_memory_scope_semantics" SourceExtension "GL_KHR_shader_subgroup_basic" SourceExtension "GL_QCOM_cooperative_matrix_conversion" Name 4 "main" Name 10 "uvec8A" Name 15 "hvec8A" Name 23 "vec8A" Name 27 "ivec8A" Name 35 "ivec32B" Name 39 "hvec32B" Name 46 "vec32B" Name 49 "uvec32B" Name 56 "ivec64Acc" Name 59 "uvec64Acc" Name 66 "vec64Acc" Name 89 "hvec8A_4" Name 95 "matA_f32_64_8" Name 102 "matA_f16_64_16" Name 110 "matA_i8_64_32" Name 113 "i8vec8A" Name 121 "matA_u8_64_32" Name 124 "u8vec8A" Name 132 "matB_f32_8_64" Name 139 "matB_f16_16_64" Name 146 "matB_i8_32_64" Name 147 "i8vec8B" Name 154 "matB_u8_32_64" Name 155 "u8vec8B" Name 162 "matB_f16_16_32" Name 169 "matB_i8_32_16" Name 177 "matAcc_f32_64_64" Name 184 "matAcc_f16_64_64" Name 185 "hvec64Acc" Name 192 "matAcc_i32_64_64" Name 199 "matAcc_u32_64_64" Name 210 "i8vec8A" Name 215 "u8vec8A" Name 228 "i8vec8B" Name 233 "u8vec8B" Name 250 "hvec64Acc" Name 262 "InputA" MemberName 262(InputA) 0 "x" Name 264 "inputA" Name 266 "InputB" MemberName 266(InputB) 0 "x" Name 268 "inputB" Name 270 "InputC" MemberName 270(InputC) 0 "x" Name 272 "inputC" Name 274 "Output" MemberName 274(Output) 0 "x" Name 276 "outputO" Decorate 261 ArrayStride 4 Decorate 262(InputA) Block MemberDecorate 262(InputA) 0 NonWritable MemberDecorate 262(InputA) 0 Offset 0 Decorate 264(inputA) NonWritable Decorate 264(inputA) Binding 0 Decorate 264(inputA) DescriptorSet 0 Decorate 265 ArrayStride 4 Decorate 266(InputB) Block MemberDecorate 266(InputB) 0 NonWritable MemberDecorate 266(InputB) 0 Offset 0 Decorate 268(inputB) NonWritable Decorate 268(inputB) Binding 1 Decorate 268(inputB) DescriptorSet 0 Decorate 269 ArrayStride 4 Decorate 270(InputC) Block MemberDecorate 270(InputC) 0 NonWritable MemberDecorate 270(InputC) 0 Offset 0 Decorate 272(inputC) NonWritable Decorate 272(inputC) Binding 2 Decorate 272(inputC) DescriptorSet 0 Decorate 273 ArrayStride 4 Decorate 274(Output) Block MemberDecorate 274(Output) 0 Offset 0 Decorate 276(outputO) Binding 3 Decorate 276(outputO) DescriptorSet 0 Decorate 278 BuiltIn WorkgroupSize 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 0 7: 6(int) Constant 8 8: TypeArray 6(int) 7 9: TypePointer Function 8 11: TypeFloat 16 12: 6(int) Constant 16 13: TypeArray 11(float16_t) 12 14: TypePointer Function 13 20: TypeFloat 32 21: TypeArray 20(float) 7 22: TypePointer Function 21 24: TypeInt 32 1 25: TypeArray 24(int) 7 26: TypePointer Function 25 32: 6(int) Constant 32 33: TypeArray 24(int) 32 34: TypePointer Function 33 36: 6(int) Constant 64 37: TypeArray 11(float16_t) 36 38: TypePointer Function 37 44: TypeArray 20(float) 32 45: TypePointer Function 44 47: TypeArray 6(int) 32 48: TypePointer Function 47 54: TypeArray 24(int) 36 55: TypePointer Function 54 57: TypeArray 6(int) 36 58: TypePointer Function 57 64: TypeArray 20(float) 36 65: TypePointer Function 64 72: 6(int) Constant 0 83: 6(int) Constant 4 87: TypeArray 11(float16_t) 83 88: TypePointer Function 87 92: 6(int) Constant 3 93: TypeCooperativeMatrixKHR 20(float) 92 36 7 72 94: TypePointer Function 93 100: TypeCooperativeMatrixKHR 11(float16_t) 92 36 12 72 101: TypePointer Function 100 107: TypeInt 8 1 108: TypeCooperativeMatrixKHR 107(int8_t) 92 36 32 72 109: TypePointer Function 108 111: TypeArray 107(int8_t) 32 112: TypePointer Function 111 118: TypeInt 8 0 119: TypeCooperativeMatrixKHR 118(int8_t) 92 36 32 72 120: TypePointer Function 119 122: TypeArray 118(int8_t) 32 123: TypePointer Function 122 129: 6(int) Constant 1 130: TypeCooperativeMatrixKHR 20(float) 92 7 36 129 131: TypePointer Function 130 137: TypeCooperativeMatrixKHR 11(float16_t) 92 12 36 129 138: TypePointer Function 137 144: TypeCooperativeMatrixKHR 107(int8_t) 92 32 36 129 145: TypePointer Function 144 152: TypeCooperativeMatrixKHR 118(int8_t) 92 32 36 129 153: TypePointer Function 152 160: TypeCooperativeMatrixKHR 11(float16_t) 92 12 32 129 161: TypePointer Function 160 167: TypeCooperativeMatrixKHR 107(int8_t) 92 32 12 129 168: TypePointer Function 167 174: 6(int) Constant 2 175: TypeCooperativeMatrixKHR 20(float) 92 36 36 174 176: TypePointer Function 175 182: TypeCooperativeMatrixKHR 11(float16_t) 92 36 36 174 183: TypePointer Function 182 190: TypeCooperativeMatrixKHR 24(int) 92 36 36 174 191: TypePointer Function 190 197: TypeCooperativeMatrixKHR 6(int) 92 36 36 174 198: TypePointer Function 197 261: TypeRuntimeArray 20(float) 262(InputA): TypeStruct 261 263: TypePointer StorageBuffer 262(InputA) 264(inputA): 263(ptr) Variable StorageBuffer 265: TypeRuntimeArray 20(float) 266(InputB): TypeStruct 265 267: TypePointer StorageBuffer 266(InputB) 268(inputB): 267(ptr) Variable StorageBuffer 269: TypeRuntimeArray 20(float) 270(InputC): TypeStruct 269 271: TypePointer StorageBuffer 270(InputC) 272(inputC): 271(ptr) Variable StorageBuffer 273: TypeRuntimeArray 20(float) 274(Output): TypeStruct 273 275: TypePointer StorageBuffer 274(Output) 276(outputO): 275(ptr) Variable StorageBuffer 277: TypeVector 6(int) 3 278: 277(ivec3) ConstantComposite 36 174 174 4(main): 2 Function None 3 5: Label 10(uvec8A): 9(ptr) Variable Function 15(hvec8A): 14(ptr) Variable Function 23(vec8A): 22(ptr) Variable Function 27(ivec8A): 26(ptr) Variable Function 35(ivec32B): 34(ptr) Variable Function 39(hvec32B): 38(ptr) Variable Function 46(vec32B): 45(ptr) Variable Function 49(uvec32B): 48(ptr) Variable Function 56(ivec64Acc): 55(ptr) Variable Function 59(uvec64Acc): 58(ptr) Variable Function 66(vec64Acc): 65(ptr) Variable Function 89(hvec8A_4): 88(ptr) Variable Function 95(matA_f32_64_8): 94(ptr) Variable Function 102(matA_f16_64_16): 101(ptr) Variable Function 110(matA_i8_64_32): 109(ptr) Variable Function 113(i8vec8A): 112(ptr) Variable Function 121(matA_u8_64_32): 120(ptr) Variable Function 124(u8vec8A): 123(ptr) Variable Function 132(matB_f32_8_64): 131(ptr) Variable Function 139(matB_f16_16_64): 138(ptr) Variable Function 146(matB_i8_32_64): 145(ptr) Variable Function 147(i8vec8B): 112(ptr) Variable Function 154(matB_u8_32_64): 153(ptr) Variable Function 155(u8vec8B): 123(ptr) Variable Function 162(matB_f16_16_32): 161(ptr) Variable Function 169(matB_i8_32_16): 168(ptr) Variable Function 177(matAcc_f32_64_64): 176(ptr) Variable Function 184(matAcc_f16_64_64): 183(ptr) Variable Function 185(hvec64Acc): 38(ptr) Variable Function 192(matAcc_i32_64_64): 191(ptr) Variable Function 199(matAcc_u32_64_64): 198(ptr) Variable Function 210(i8vec8A): 112(ptr) Variable Function 215(u8vec8A): 123(ptr) Variable Function 228(i8vec8B): 112(ptr) Variable Function 233(u8vec8B): 123(ptr) Variable Function 250(hvec64Acc): 38(ptr) Variable Function 16: 13 Load 15(hvec8A) 17: 8 BitCastArrayQCOM 16 Store 10(uvec8A) 17 18: 8 Load 10(uvec8A) 19: 13 BitCastArrayQCOM 18 Store 15(hvec8A) 19 28: 25 Load 27(ivec8A) 29: 21 BitCastArrayQCOM 28 Store 23(vec8A) 29 30: 21 Load 23(vec8A) 31: 25 BitCastArrayQCOM 30 Store 27(ivec8A) 31 40: 37 Load 39(hvec32B) 41: 33 BitCastArrayQCOM 40 Store 35(ivec32B) 41 42: 33 Load 35(ivec32B) 43: 37 BitCastArrayQCOM 42 Store 39(hvec32B) 43 50: 47 Load 49(uvec32B) 51: 44 BitCastArrayQCOM 50 Store 46(vec32B) 51 52: 44 Load 46(vec32B) 53: 47 BitCastArrayQCOM 52 Store 49(uvec32B) 53 60: 57 Load 59(uvec64Acc) 61: 54 BitCastArrayQCOM 60 Store 56(ivec64Acc) 61 62: 54 Load 56(ivec64Acc) 63: 57 BitCastArrayQCOM 62 Store 59(uvec64Acc) 63 67: 57 Load 59(uvec64Acc) 68: 64 BitCastArrayQCOM 67 Store 66(vec64Acc) 68 69: 64 Load 66(vec64Acc) 70: 57 BitCastArrayQCOM 69 Store 59(uvec64Acc) 70 71: 54 Load 56(ivec64Acc) 73: 25 ExtractSubArrayQCOM 71 72 Store 27(ivec8A) 73 74: 54 Load 56(ivec64Acc) 75: 33 ExtractSubArrayQCOM 74 7 Store 35(ivec32B) 75 76: 57 Load 59(uvec64Acc) 77: 8 ExtractSubArrayQCOM 76 72 Store 10(uvec8A) 77 78: 57 Load 59(uvec64Acc) 79: 47 ExtractSubArrayQCOM 78 7 Store 49(uvec32B) 79 80: 64 Load 66(vec64Acc) 81: 21 ExtractSubArrayQCOM 80 72 Store 23(vec8A) 81 82: 64 Load 66(vec64Acc) 84: 44 ExtractSubArrayQCOM 82 83 Store 46(vec32B) 84 85: 37 Load 39(hvec32B) 86: 13 ExtractSubArrayQCOM 85 72 Store 15(hvec8A) 86 90: 37 Load 39(hvec32B) 91: 87 ExtractSubArrayQCOM 90 83 Store 89(hvec8A_4) 91 96: 21 Load 23(vec8A) 97: 93 CompositeConstructCoopMatQCOM 96 Store 95(matA_f32_64_8) 97 98: 8 Load 10(uvec8A) 99: 93 CompositeConstructCoopMatQCOM 98 Store 95(matA_f32_64_8) 99 103: 13 Load 15(hvec8A) 104: 100 CompositeConstructCoopMatQCOM 103 Store 102(matA_f16_64_16) 104 105: 8 Load 10(uvec8A) 106: 100 CompositeConstructCoopMatQCOM 105 Store 102(matA_f16_64_16) 106 114: 111 Load 113(i8vec8A) 115: 108 CompositeConstructCoopMatQCOM 114 Store 110(matA_i8_64_32) 115 116: 8 Load 10(uvec8A) 117: 108 CompositeConstructCoopMatQCOM 116 Store 110(matA_i8_64_32) 117 125: 122 Load 124(u8vec8A) 126: 119 CompositeConstructCoopMatQCOM 125 Store 121(matA_u8_64_32) 126 127: 8 Load 10(uvec8A) 128: 119 CompositeConstructCoopMatQCOM 127 Store 121(matA_u8_64_32) 128 133: 21 Load 23(vec8A) 134: 130 CompositeConstructCoopMatQCOM 133 Store 132(matB_f32_8_64) 134 135: 8 Load 10(uvec8A) 136: 130 CompositeConstructCoopMatQCOM 135 Store 132(matB_f32_8_64) 136 140: 13 Load 15(hvec8A) 141: 137 CompositeConstructCoopMatQCOM 140 Store 139(matB_f16_16_64) 141 142: 8 Load 10(uvec8A) 143: 137 CompositeConstructCoopMatQCOM 142 Store 139(matB_f16_16_64) 143 148: 111 Load 147(i8vec8B) 149: 144 CompositeConstructCoopMatQCOM 148 Store 146(matB_i8_32_64) 149 150: 8 Load 10(uvec8A) 151: 144 CompositeConstructCoopMatQCOM 150 Store 146(matB_i8_32_64) 151 156: 122 Load 155(u8vec8B) 157: 152 CompositeConstructCoopMatQCOM 156 Store 154(matB_u8_32_64) 157 158: 8 Load 10(uvec8A) 159: 152 CompositeConstructCoopMatQCOM 158 Store 154(matB_u8_32_64) 159 163: 13 Load 15(hvec8A) 164: 160 CompositeConstructCoopMatQCOM 163 Store 162(matB_f16_16_32) 164 165: 8 Load 10(uvec8A) 166: 160 CompositeConstructCoopMatQCOM 165 Store 162(matB_f16_16_32) 166 170: 111 Load 147(i8vec8B) 171: 167 CompositeConstructCoopMatQCOM 170 Store 169(matB_i8_32_16) 171 172: 8 Load 10(uvec8A) 173: 167 CompositeConstructCoopMatQCOM 172 Store 169(matB_i8_32_16) 173 178: 64 Load 66(vec64Acc) 179: 175 CompositeConstructCoopMatQCOM 178 Store 177(matAcc_f32_64_64) 179 180: 57 Load 59(uvec64Acc) 181: 175 CompositeConstructCoopMatQCOM 180 Store 177(matAcc_f32_64_64) 181 186: 37 Load 185(hvec64Acc) 187: 182 CompositeConstructCoopMatQCOM 186 Store 184(matAcc_f16_64_64) 187 188: 47 Load 49(uvec32B) 189: 182 CompositeConstructCoopMatQCOM 188 Store 184(matAcc_f16_64_64) 189 193: 54 Load 56(ivec64Acc) 194: 190 CompositeConstructCoopMatQCOM 193 Store 192(matAcc_i32_64_64) 194 195: 57 Load 59(uvec64Acc) 196: 190 CompositeConstructCoopMatQCOM 195 Store 192(matAcc_i32_64_64) 196 200: 57 Load 59(uvec64Acc) 201: 197 CompositeConstructCoopMatQCOM 200 Store 199(matAcc_u32_64_64) 201 202: 93 Load 95(matA_f32_64_8) 203: 21 CompositeExtractCoopMatQCOM 202 Store 23(vec8A) 203 204: 93 Load 95(matA_f32_64_8) 205: 8 CompositeExtractCoopMatQCOM 204 Store 10(uvec8A) 205 206: 100 Load 102(matA_f16_64_16) 207: 13 CompositeExtractCoopMatQCOM 206 Store 15(hvec8A) 207 208: 100 Load 102(matA_f16_64_16) 209: 8 CompositeExtractCoopMatQCOM 208 Store 10(uvec8A) 209 211: 108 Load 110(matA_i8_64_32) 212: 111 CompositeExtractCoopMatQCOM 211 Store 210(i8vec8A) 212 213: 108 Load 110(matA_i8_64_32) 214: 8 CompositeExtractCoopMatQCOM 213 Store 10(uvec8A) 214 216: 119 Load 121(matA_u8_64_32) 217: 122 CompositeExtractCoopMatQCOM 216 Store 215(u8vec8A) 217 218: 119 Load 121(matA_u8_64_32) 219: 8 CompositeExtractCoopMatQCOM 218 Store 10(uvec8A) 219 220: 130 Load 132(matB_f32_8_64) 221: 21 CompositeExtractCoopMatQCOM 220 Store 23(vec8A) 221 222: 130 Load 132(matB_f32_8_64) 223: 8 CompositeExtractCoopMatQCOM 222 Store 10(uvec8A) 223 224: 137 Load 139(matB_f16_16_64) 225: 13 CompositeExtractCoopMatQCOM 224 Store 15(hvec8A) 225 226: 137 Load 139(matB_f16_16_64) 227: 8 CompositeExtractCoopMatQCOM 226 Store 10(uvec8A) 227 229: 144 Load 146(matB_i8_32_64) 230: 111 CompositeExtractCoopMatQCOM 229 Store 228(i8vec8B) 230 231: 144 Load 146(matB_i8_32_64) 232: 8 CompositeExtractCoopMatQCOM 231 Store 10(uvec8A) 232 234: 152 Load 154(matB_u8_32_64) 235: 122 CompositeExtractCoopMatQCOM 234 Store 233(u8vec8B) 235 236: 152 Load 154(matB_u8_32_64) 237: 8 CompositeExtractCoopMatQCOM 236 Store 10(uvec8A) 237 238: 160 Load 162(matB_f16_16_32) 239: 13 CompositeExtractCoopMatQCOM 238 Store 15(hvec8A) 239 240: 160 Load 162(matB_f16_16_32) 241: 8 CompositeExtractCoopMatQCOM 240 Store 10(uvec8A) 241 242: 167 Load 169(matB_i8_32_16) 243: 111 CompositeExtractCoopMatQCOM 242 Store 228(i8vec8B) 243 244: 167 Load 169(matB_i8_32_16) 245: 8 CompositeExtractCoopMatQCOM 244 Store 10(uvec8A) 245 246: 175 Load 177(matAcc_f32_64_64) 247: 64 CompositeExtractCoopMatQCOM 246 Store 66(vec64Acc) 247 248: 175 Load 177(matAcc_f32_64_64) 249: 57 CompositeExtractCoopMatQCOM 248 Store 59(uvec64Acc) 249 251: 182 Load 184(matAcc_f16_64_64) 252: 37 CompositeExtractCoopMatQCOM 251 Store 250(hvec64Acc) 252 253: 182 Load 184(matAcc_f16_64_64) 254: 47 CompositeExtractCoopMatQCOM 253 Store 49(uvec32B) 254 255: 190 Load 192(matAcc_i32_64_64) 256: 54 CompositeExtractCoopMatQCOM 255 Store 56(ivec64Acc) 256 257: 190 Load 192(matAcc_i32_64_64) 258: 57 CompositeExtractCoopMatQCOM 257 Store 59(uvec64Acc) 258 259: 197 Load 199(matAcc_u32_64_64) 260: 57 CompositeExtractCoopMatQCOM 259 Store 59(uvec64Acc) 260 Return FunctionEnd