spv.coopmat2_tensor.comp // Module Version 10600 // Generated by (magic number): 8000b // Id's are bound by 145 Capability Shader Capability Float16 Capability StorageUniformBufferBlock16 Capability VulkanMemoryModelKHR Capability PhysicalStorageBufferAddressesEXT Capability CooperativeMatrixTensorAddressingNV Capability CooperativeMatrixBlockLoadsNV Capability TensorAddressingNV Capability CooperativeMatrixKHR Extension "SPV_KHR_cooperative_matrix" Extension "SPV_NV_cooperative_matrix2" Extension "SPV_NV_tensor_addressing" 1: ExtInstImport "GLSL.std.450" MemoryModel PhysicalStorageBuffer64EXT VulkanKHR EntryPoint GLCompute 4 "main" 86 130 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" SourceExtension "GL_NV_cooperative_matrix2" Name 4 "main" Name 8 "fp16Buf" MemberName 8(fp16Buf) 0 "f" Name 16 "decode(1;u1[2];u1[2];" Name 13 "b" Name 14 "blockCoords" Name 15 "coordInBlock" Name 28 "t" Name 34 "t2" Name 53 "v" Name 71 "v2" Name 75 "v3" Name 80 "tempArg" Name 81 "A" Name 84 "BufType" MemberName 84(BufType) 0 "x" Name 86 "Buf" Name 96 "tempArg" Name 108 "tempArg" Name 115 "tempArg" Name 123 "tempArg" Name 126 "S" MemberName 126(S) 0 "x" Name 128 "SBuf" MemberName 128(SBuf) 0 "s" Name 130 "sbuf" Name 138 "Clamp" Name 141 "tc" Decorate 8(fp16Buf) Block MemberDecorate 8(fp16Buf) 0 Offset 0 Decorate 13(b) Aliased Decorate 83 ArrayStride 2 Decorate 84(BufType) Block MemberDecorate 84(BufType) 0 Offset 0 Decorate 86(Buf) Binding 1 Decorate 86(Buf) DescriptorSet 0 MemberDecorate 126(S) 0 Offset 0 Decorate 127 ArrayStride 4 Decorate 128(SBuf) Block MemberDecorate 128(SBuf) 0 Offset 0 Decorate 130(sbuf) Binding 0 Decorate 130(sbuf) DescriptorSet 0 Decorate 138(Clamp) SpecId 0 2: TypeVoid 3: TypeFunction 2 TypeForwardPointer 6 PhysicalStorageBufferEXT 7: TypeFloat 16 8(fp16Buf): TypeStruct 7(float16_t) 6: TypePointer PhysicalStorageBufferEXT 8(fp16Buf) 9: TypeInt 32 0 10: 9(int) Constant 2 11: TypeArray 9(int) 10 12: TypeFunction 7(float16_t) 6(ptr) 11 11 18: TypeInt 32 1 19: 18(int) Constant 0 20: TypePointer PhysicalStorageBufferEXT 7(float16_t) 25: 9(int) Constant 0 26: TypeTensorLayoutNV 10 25 27: TypePointer Function 26 30: 9(int) Constant 3 31: 9(int) Constant 1 32: TypeTensorLayoutNV 30 31 33: TypePointer Function 32 37: 9(int) Constant 4 38: 9(int) Constant 8 41: 9(int) Constant 256 42: 9(int) Constant 512 45: 9(int) Constant 128 46: 9(int) Constant 32 48: 9(int) Constant 5 49: TypeBool 50: 49(bool) ConstantFalse 51: TypeTensorViewNV 48 50 25 31 10 30 37 52: TypePointer Function 51 56: 9(int) Constant 10 57: 9(int) Constant 11 58: 9(int) Constant 12 59: 9(int) Constant 13 60: 9(int) Constant 14 63: 9(int) Constant 15 66: 9(int) Constant 16 68: 49(bool) ConstantTrue 69: TypeTensorViewNV 48 68 25 31 10 30 37 70: TypePointer Function 69 73: TypeTensorViewNV 10 68 31 25 74: TypePointer Function 73 77: 9(int) Constant 64 78: TypeCooperativeMatrixKHR 7(float16_t) 10 77 46 25 79: TypePointer Function 78 83: TypeRuntimeArray 7(float16_t) 84(BufType): TypeStruct 83 85: TypePointer StorageBuffer 84(BufType) 86(Buf): 85(ptr) Variable StorageBuffer 87: TypePointer StorageBuffer 7(float16_t) 125: TypeVector 7(float16_t) 2 126(S): TypeStruct 125(f16vec2) 127: TypeRuntimeArray 126(S) 128(SBuf): TypeStruct 127 129: TypePointer StorageBuffer 128(SBuf) 130(sbuf): 129(ptr) Variable StorageBuffer 131: TypePointer StorageBuffer 126(S) 138(Clamp): 9(int) SpecConstant 1 139: TypeTensorLayoutNV 10 138(Clamp) 140: TypePointer Function 139 143: TypeVector 9(int) 3 144: 143(ivec3) ConstantComposite 77 31 31 4(main): 2 Function None 3 5: Label 28(t): 27(ptr) Variable Function 34(t2): 33(ptr) Variable Function 53(v): 52(ptr) Variable Function 71(v2): 70(ptr) Variable Function 75(v3): 74(ptr) Variable Function 80(tempArg): 79(ptr) Variable Function 81(A): 79(ptr) Variable Function 96(tempArg): 79(ptr) Variable Function 108(tempArg): 79(ptr) Variable Function 115(tempArg): 79(ptr) Variable Function 123(tempArg): 79(ptr) Variable Function 141(tc): 140(ptr) Variable Function 29: 26 CreateTensorLayoutNV Store 28(t) 29 35: 32 CreateTensorLayoutNV Store 34(t2) 35 36: 26 Load 28(t) 39: 26 TensorLayoutSetBlockSizeNV 36 37 38 Store 28(t) 39 40: 26 Load 28(t) 43: 26 TensorLayoutSetDimensionNV 40 41 42 Store 28(t) 43 44: 26 Load 28(t) 47: 26 TensorLayoutSliceNV 44 45 46 41 46 Store 28(t) 47 54: 51 CreateTensorViewNV Store 53(v) 54 55: 51 Load 53(v) 61: 51 TensorViewSetDimensionNV 55 56 57 58 59 60 Store 53(v) 61 62: 51 Load 53(v) 64: 51 TensorViewSetStrideNV 62 56 57 58 59 63 Store 53(v) 64 65: 51 Load 53(v) 67: 51 TensorViewSetClipNV 65 25 66 25 66 Store 53(v) 67 72: 69 CreateTensorViewNV Store 71(v2) 72 76: 73 CreateTensorViewNV Store 75(v3) 76 82: 78 Load 81(A) Store 80(tempArg) 82 88: 87(ptr) AccessChain 86(Buf) 19 25 89: 26 Load 28(t) 90: 78 Load 80(tempArg) 91: 78 CooperativeMatrixLoadTensorNV 88 90 89 None None Store 80(tempArg) 91 92: 78 Load 80(tempArg) Store 81(A) 92 93: 78 Load 81(A) 94: 87(ptr) AccessChain 86(Buf) 19 25 95: 26 Load 28(t) CooperativeMatrixStoreTensorNV 94 93 95 None None 97: 78 Load 81(A) Store 96(tempArg) 97 98: 87(ptr) AccessChain 86(Buf) 19 25 99: 26 Load 28(t) 100: 51 Load 53(v) 101: 78 Load 96(tempArg) 102: 78 CooperativeMatrixLoadTensorNV 98 101 99 None TensorView 100 Store 96(tempArg) 102 103: 78 Load 96(tempArg) Store 81(A) 103 104: 78 Load 81(A) 105: 87(ptr) AccessChain 86(Buf) 19 25 106: 26 Load 28(t) 107: 51 Load 53(v) CooperativeMatrixStoreTensorNV 105 104 106 None TensorView 107 109: 78 Load 81(A) Store 108(tempArg) 109 110: 87(ptr) AccessChain 86(Buf) 19 25 111: 26 Load 28(t) 112: 78 Load 108(tempArg) 113: 78 CooperativeMatrixLoadTensorNV 110 112 111 None DecodeFunc 16(decode(1;u1[2];u1[2];) Store 108(tempArg) 113 114: 78 Load 108(tempArg) Store 81(A) 114 116: 78 Load 81(A) Store 115(tempArg) 116 117: 87(ptr) AccessChain 86(Buf) 19 25 118: 26 Load 28(t) 119: 51 Load 53(v) 120: 78 Load 115(tempArg) 121: 78 CooperativeMatrixLoadTensorNV 117 120 118 None TensorView DecodeFunc 119 16(decode(1;u1[2];u1[2];) Store 115(tempArg) 121 122: 78 Load 115(tempArg) Store 81(A) 122 124: 78 Load 81(A) Store 123(tempArg) 124 132: 131(ptr) AccessChain 130(sbuf) 19 31 133: 26 Load 28(t) 134: 51 Load 53(v) 135: 78 Load 123(tempArg) 136: 78 CooperativeMatrixLoadTensorNV 132 135 133 None TensorView DecodeFunc 134 16(decode(1;u1[2];u1[2];) Store 123(tempArg) 136 137: 78 Load 123(tempArg) Store 81(A) 137 142: 139 CreateTensorLayoutNV Store 141(tc) 142 Return FunctionEnd 16(decode(1;u1[2];u1[2];):7(float16_t) Function None 12 13(b): 6(ptr) FunctionParameter 14(blockCoords): 11 FunctionParameter 15(coordInBlock): 11 FunctionParameter 17: Label 21: 20(ptr) AccessChain 13(b) 19 22:7(float16_t) Load 21 Aligned 2 ReturnValue 22 FunctionEnd