yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Wooyoung KimGLSL_QCOM_multiple_wait_queuescb30230f

main
10.9 KiB216 linesraw
1spv.qcom.multiple_wait_queues.comp
2// Module Version 10300
3// Generated by (magic number): 8000b
4// Id's are bound by 115
5
6                              Capability Shader
7                              Capability VulkanMemoryModelKHR
8                              Capability CooperativeMatrixKHR
9                              Extension  "SPV_KHR_cooperative_matrix"
10                              Extension  "SPV_KHR_vulkan_memory_model"
11               1:             ExtInstImport  "GLSL.std.450"
12                              MemoryModel Logical VulkanKHR
13                              EntryPoint GLCompute 4  "main"
14                              ExecutionMode 4 LocalSize 64 2 2
15                              Source GLSL 450
16                              SourceExtension  "GL_KHR_cooperative_matrix"
17                              SourceExtension  "GL_KHR_memory_scope_semantics"
18                              SourceExtension  "GL_QCOM_multiple_wait_queues"
19                              Name 4  "main"
20                              Name 11  "coop_matmul(u1;u1;"
21                              Name 9  "row"
22                              Name 10  "col"
23                              Name 13  "step"
24                              Name 21  "TOTAL_K"
25                              Name 24  "subMatrixAStart"
26                              Name 30  "subMatrixBStart"
27                              Name 37  "TILE_M"
28                              Name 41  "matA"
29                              Name 43  "InputA"
30                              MemberName 43(InputA) 0  "x"
31                              Name 45  "inputA"
32                              Name 52  "TILE_N"
33                              Name 56  "matB"
34                              Name 58  "InputB"
35                              MemberName 58(InputB) 0  "x"
36                              Name 60  "inputB"
37                              Name 68  "matC"
38                              Name 73  "TILE_K"
39                              Name 83  "subMatrixAStart"
40                              Name 88  "subMatrixBStart"
41                              Name 105  "param"
42                              Name 106  "param"
43                              Name 109  "InputC"
44                              MemberName 109(InputC) 0  "x"
45                              Name 111  "inputC"
46                              Decorate 21(TOTAL_K) SpecId 0
47                              Decorate 37(TILE_M) SpecId 3
48                              Decorate 42 ArrayStride 4
49                              Decorate 43(InputA) Block
50                              MemberDecorate 43(InputA) 0 NonWritable
51                              MemberDecorate 43(InputA) 0 Offset 0
52                              Decorate 45(inputA) NonWritable
53                              Decorate 45(inputA) Binding 0
54                              Decorate 45(inputA) DescriptorSet 0
55                              Decorate 52(TILE_N) SpecId 4
56                              Decorate 57 ArrayStride 4
57                              Decorate 58(InputB) Block
58                              MemberDecorate 58(InputB) 0 NonWritable
59                              MemberDecorate 58(InputB) 0 Offset 0
60                              Decorate 60(inputB) NonWritable
61                              Decorate 60(inputB) Binding 1
62                              Decorate 60(inputB) DescriptorSet 0
63                              Decorate 73(TILE_K) SpecId 7
64                              Decorate 108 ArrayStride 4
65                              Decorate 109(InputC) Block
66                              MemberDecorate 109(InputC) 0 NonWritable
67                              MemberDecorate 109(InputC) 0 Offset 0
68                              Decorate 111(inputC) NonWritable
69                              Decorate 111(inputC) Binding 2
70                              Decorate 111(inputC) DescriptorSet 0
71                              Decorate 114 BuiltIn WorkgroupSize
72               2:             TypeVoid
73               3:             TypeFunction 2
74               6:             TypeInt 32 0
75               7:             TypePointer Function 6(int)
76               8:             TypeFunction 2 7(ptr) 7(ptr)
77              14:      6(int) Constant 0
78     21(TOTAL_K):      6(int) SpecConstant 1
79              22:             TypeBool
80              26:      6(int) Constant 16
81              35:             TypeFloat 32
82              36:      6(int) Constant 3
83      37(TILE_M):      6(int) SpecConstant 1
84              38:      6(int) Constant 8
85              39:             TypeCooperativeMatrixKHR 35(float) 36 37(TILE_M) 38 14
86              40:             TypePointer Function 39
87              42:             TypeRuntimeArray 35(float)
88      43(InputA):             TypeStruct 42
89              44:             TypePointer StorageBuffer 43(InputA)
90      45(inputA):     44(ptr) Variable StorageBuffer
91              46:             TypeInt 32 1
92              47:     46(int) Constant 0
93              49:             TypePointer StorageBuffer 35(float)
94      52(TILE_N):      6(int) SpecConstant 1
95              53:      6(int) Constant 1
96              54:             TypeCooperativeMatrixKHR 35(float) 36 38 52(TILE_N) 53
97              55:             TypePointer Function 54
98              57:             TypeRuntimeArray 35(float)
99      58(InputB):             TypeStruct 57
100              59:             TypePointer StorageBuffer 58(InputB)
101      60(inputB):     59(ptr) Variable StorageBuffer
102              63:     46(int) Constant 1
103              65:      6(int) Constant 2
104              66:             TypeCooperativeMatrixKHR 35(float) 36 37(TILE_M) 52(TILE_N) 65
105              67:             TypePointer Function 66
106      73(TILE_K):      6(int) SpecConstant 1
107             108:             TypeRuntimeArray 35(float)
108     109(InputC):             TypeStruct 108
109             110:             TypePointer StorageBuffer 109(InputC)
110     111(inputC):    110(ptr) Variable StorageBuffer
111             112:             TypeVector 6(int) 3
112             113:      6(int) Constant 64
113             114:  112(ivec3) ConstantComposite 113 65 65
114         4(main):           2 Function None 3
115               5:             Label
116      105(param):      7(ptr) Variable Function
117      106(param):      7(ptr) Variable Function
118                              Store 105(param) 14
119                              Store 106(param) 14
120             107:           2 FunctionCall 11(coop_matmul(u1;u1;) 105(param) 106(param)
121                              Return
122                              FunctionEnd
12311(coop_matmul(u1;u1;):           2 Function None 8
124          9(row):      7(ptr) FunctionParameter
125         10(col):      7(ptr) FunctionParameter
126              12:             Label
127        13(step):      7(ptr) Variable Function
12824(subMatrixAStart):      7(ptr) Variable Function
12930(subMatrixBStart):      7(ptr) Variable Function
130        41(matA):     40(ptr) Variable Function
131        56(matB):     55(ptr) Variable Function
132        68(matC):     67(ptr) Variable Function
13383(subMatrixAStart):      7(ptr) Variable Function
13488(subMatrixBStart):      7(ptr) Variable Function
135                              Store 13(step) 14
136                              Branch 15
137              15:             Label
138                              LoopMerge 17 18  0
139                              Branch 19
140              19:             Label
141              20:      6(int) Load 13(step)
142              23:    22(bool) ULessThan 20 21(TOTAL_K)
143                              BranchConditional 23 16 17
144              16:               Label
145              25:      6(int)   Load 9(row)
146              27:      6(int)   IMul 25 26
147              28:      6(int)   Load 13(step)
148              29:      6(int)   IAdd 27 28
149                                Store 24(subMatrixAStart) 29
150              31:      6(int)   Load 10(col)
151              32:      6(int)   IMul 31 26
152              33:      6(int)   Load 13(step)
153              34:      6(int)   IAdd 32 33
154                                Store 30(subMatrixBStart) 34
155              48:      6(int)   Load 24(subMatrixAStart)
156              50:     49(ptr)   AccessChain 45(inputA) 47 48
157              51:          39   CooperativeMatrixLoadKHR 50 47 26 None
158                                Store 41(matA) 51
159              61:      6(int)   Load 30(subMatrixBStart)
160              62:     49(ptr)   AccessChain 60(inputB) 47 61
161              64:          54   CooperativeMatrixLoadKHR 62 63 26 None
162                                Store 56(matB) 64
163              69:          39   Load 41(matA)
164              70:          54   Load 56(matB)
165              71:          66   Load 68(matC)
166              72:          66   CooperativeMatrixMulAddKHR 69 70 71
167                                Store 68(matC) 72
168                                Branch 18
169              18:               Label
170              74:      6(int)   Load 13(step)
171              75:      6(int)   IAdd 74 73(TILE_K)
172                                Store 13(step) 75
173                                Branch 15
174              17:             Label
175                              Store 13(step) 14
176                              Branch 76
177              76:             Label
178                              LoopMerge 78 79  2
179                              Branch 80
180              80:             Label
181              81:      6(int) Load 13(step)
182              82:    22(bool) ULessThan 81 21(TOTAL_K)
183                              BranchConditional 82 77 78
184              77:               Label
185              84:      6(int)   Load 9(row)
186              85:      6(int)   IMul 84 26
187              86:      6(int)   Load 13(step)
188              87:      6(int)   IAdd 85 86
189                                Store 83(subMatrixAStart) 87
190              89:      6(int)   Load 10(col)
191              90:      6(int)   IMul 89 26
192              91:      6(int)   Load 13(step)
193              92:      6(int)   IAdd 90 91
194                                Store 88(subMatrixBStart) 92
195              93:      6(int)   Load 83(subMatrixAStart)
196              94:     49(ptr)   AccessChain 45(inputA) 47 93
197              95:          39   CooperativeMatrixLoadKHR 94 47 26 None
198                                Store 41(matA) 95
199              96:      6(int)   Load 88(subMatrixBStart)
200              97:     49(ptr)   AccessChain 60(inputB) 47 96
201              98:          54   CooperativeMatrixLoadKHR 97 63 26 None
202                                Store 56(matB) 98
203              99:          39   Load 41(matA)
204             100:          54   Load 56(matB)
205             101:          66   Load 68(matC)
206             102:          66   CooperativeMatrixMulAddKHR 99 100 101
207                                Store 68(matC) 102
208                                Branch 79
209              79:               Label
210             103:      6(int)   Load 13(step)
211             104:      6(int)   IAdd 103 73(TILE_K)
212                                Store 13(step) 104
213                                Branch 76
214              78:             Label
215                              Return
216                              FunctionEnd