yum-mirror/glslang

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

Jeff BolzImplement GL_EXT_long_vector (#4132)b937eae5

main
17.1 KiB355 linesraw
1spv.longVector.comp
2// Module Version 10300
3// Generated by (magic number): 8000b
4// Id's are bound by 230
5
6                              Capability Shader
7                              Capability Float16
8                              Capability StorageUniformBufferBlock16
9                              Capability StorageBuffer8BitAccess
10                              Capability LongVectorEXT
11                              Extension  "SPV_EXT_long_vector"
12                              Extension  "SPV_KHR_8bit_storage"
13               1:             ExtInstImport  "GLSL.std.450"
14                              MemoryModel Logical GLSL450
15                              EntryPoint GLCompute 4  "main"
16                              ExecutionMode 4 LocalSize 64 1 1
17                              Source GLSL 450
18                              SourceExtension  "GL_EXT_buffer_reference"
19                              SourceExtension  "GL_EXT_long_vector"
20                              SourceExtension  "GL_EXT_nonuniform_qualifier"
21                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types"
22                              SourceExtension  "GL_KHR_memory_scope_semantics"
23                              Name 4  "main"
24                              Name 11  "foo(f161<1>;"
25                              Name 10  "x"
26                              Name 17  "foo(f161<2>;"
27                              Name 16  "x"
28                              Name 24  "funcvec4(vf4;"
29                              Name 23  "a"
30                              Name 27  "funcvector4(f1<4>;"
31                              Name 26  "a"
32                              Name 29  "testfuncs("
33                              Name 33  "v"
34                              Name 38  "x"
35                              Name 41  "y"
36                              Name 44  "v2"
37                              Name 53  "v3"
38                              Name 55  "x3"
39                              Name 60  "y3"
40                              Name 65  "v4"
41                              Name 78  "v5"
42                              Name 81  "v6"
43                              Name 107  "f"
44                              Name 117  "len"
45                              Name 132  "f162"
46                              Name 138  "f161"
47                              Name 140  "f16"
48                              Name 145  "v11"
49                              Name 147  "v12"
50                              Name 158  "v13"
51                              Name 183  "vecA"
52                              Name 201  "a"
53                              Name 202  "b"
54                              Name 205  "param"
55                              Name 208  "param"
56                              Name 211  "x"
57                              Name 212  "param"
58                              Name 221  "MatrixBuf"
59                              MemberName 221(MatrixBuf) 0  "matrixData"
60                              Name 223  "matrixBuf"
61                              Name 226  "MatrixBuf2"
62                              MemberName 226(MatrixBuf2) 0  "matrixData"
63                              Name 228  "matrixBuf2"
64                              Name 229  "matrixLayout"
65                              Decorate 219 BuiltIn WorkgroupSize
66                              Decorate 220 ArrayStride 2
67                              Decorate 221(MatrixBuf) Block
68                              MemberDecorate 221(MatrixBuf) 0 Offset 0
69                              Decorate 223(matrixBuf) Binding 0
70                              Decorate 223(matrixBuf) DescriptorSet 0
71                              Decorate 225 ArrayStride 1
72                              Decorate 226(MatrixBuf2) Block
73                              MemberDecorate 226(MatrixBuf2) 0 Offset 0
74                              Decorate 228(matrixBuf2) Binding 0
75                              Decorate 228(matrixBuf2) DescriptorSet 0
76                              Decorate 229(matrixLayout) SpecId 0
77               2:             TypeVoid
78               3:             TypeFunction 2
79               6:             TypeFloat 16
80               7:             TypeVector 6(float16_t) 1
81               8:             TypePointer Function 7(f16vec)
82               9:             TypeFunction 7(f16vec) 8(ptr)
83              13:             TypeVector 6(float16_t) 2
84              14:             TypePointer Function 13(f16vec2)
85              15:             TypeFunction 13(f16vec2) 14(ptr)
86              19:             TypeFloat 32
87              20:             TypeVector 19(float) 4
88              21:             TypePointer Function 20(fvec4)
89              22:             TypeFunction 20(fvec4) 21(ptr)
90              31:             TypeVector 19(float) 5
91              32:             TypePointer Function 31(fvec)
92              34:   19(float) Constant 0
93              35:    31(fvec) ConstantComposite 34 34 34 34 34
94              36:             TypeVector 19(float) 3
95              37:             TypePointer Function 36(fvec3)
96              39:   19(float) Constant 1065353216
97              40:   36(fvec3) ConstantComposite 39 39 39
98              42:   19(float) Constant 1073741824
99              43:   36(fvec3) ConstantComposite 42 42 42
100              54:    31(fvec) ConstantComposite 39 39 39 42 42
101              56:   19(float) Constant 1082130432
102              57:   19(float) Constant 1084227584
103              58:   19(float) Constant 1086324736
104              59:   36(fvec3) ConstantComposite 56 57 58
105              61:   19(float) Constant 1088421888
106              62:   19(float) Constant 1090519040
107              63:   19(float) Constant 1091567616
108              64:   36(fvec3) ConstantComposite 61 62 63
109              76:             TypeVector 6(float16_t) 5
110              77:             TypePointer Function 76(f16vec)
111             106:             TypePointer Function 19(float)
112             115:             TypeInt 32 1
113             116:             TypePointer Function 115(int)
114             118:    115(int) Constant 5
115             120:    115(int) Constant 0
116             123:    115(int) Constant 4
117             133:             TypeVector 19(float) 20
118             134:    115(int) Constant 20
119             139:             TypePointer Function 6(float16_t)
120             143:             TypeVector 6(float16_t) 7
121             144:             TypePointer Function 143(f16vec)
122             185:6(float16_t) Constant 11264
123             186: 13(f16vec2) ConstantComposite 185 185
124             215:             TypeInt 32 0
125             216:             TypeVector 215(int) 3
126             217:    215(int) Constant 64
127             218:    215(int) Constant 1
128             219:  216(ivec3) ConstantComposite 217 218 218
129             220:             TypeRuntimeArray 6(float16_t)
130  221(MatrixBuf):             TypeStruct 220
131             222:             TypePointer StorageBuffer 221(MatrixBuf)
132  223(matrixBuf):    222(ptr) Variable StorageBuffer
133             224:             TypeInt 8 1
134             225:             TypeRuntimeArray 224(int8_t)
135 226(MatrixBuf2):             TypeStruct 225
136             227:             TypePointer StorageBuffer 226(MatrixBuf2)
137 228(matrixBuf2):    227(ptr) Variable StorageBuffer
138229(matrixLayout):    115(int) SpecConstant 1
139         4(main):           2 Function None 3
140               5:             Label
141           33(v):     32(ptr) Variable Function
142           38(x):     37(ptr) Variable Function
143           41(y):     37(ptr) Variable Function
144          44(v2):     32(ptr) Variable Function
145          53(v3):     32(ptr) Variable Function
146          55(x3):     37(ptr) Variable Function
147          60(y3):     37(ptr) Variable Function
148          65(v4):     32(ptr) Variable Function
149          78(v5):     77(ptr) Variable Function
150          81(v6):     32(ptr) Variable Function
151          107(f):    106(ptr) Variable Function
152        117(len):    116(ptr) Variable Function
153       132(f162):     14(ptr) Variable Function
154       138(f161):      8(ptr) Variable Function
155        140(f16):    139(ptr) Variable Function
156        145(v11):    144(ptr) Variable Function
157        147(v12):    144(ptr) Variable Function
158        158(v13):    144(ptr) Variable Function
159       183(vecA):     14(ptr) Variable Function
160                              Store 33(v) 35
161                              Store 38(x) 40
162                              Store 41(y) 43
163              45:   36(fvec3) Load 38(x)
164              46:   36(fvec3) Load 41(y)
165              47:   19(float) CompositeExtract 45 0
166              48:   19(float) CompositeExtract 45 1
167              49:   19(float) CompositeExtract 45 2
168              50:   19(float) CompositeExtract 46 0
169              51:   19(float) CompositeExtract 46 1
170              52:    31(fvec) CompositeConstruct 47 48 49 50 51
171                              Store 44(v2) 52
172                              Store 53(v3) 54
173                              Store 55(x3) 59
174                              Store 60(y3) 64
175              66:   36(fvec3) Load 55(x3)
176              67:   36(fvec3) VectorShuffle 66 66 2 1 0
177              68:   36(fvec3) Load 60(y3)
178              69:   36(fvec3) VectorShuffle 68 68 2 2 1
179              70:   19(float) CompositeExtract 67 0
180              71:   19(float) CompositeExtract 67 1
181              72:   19(float) CompositeExtract 67 2
182              73:   19(float) CompositeExtract 69 0
183              74:   19(float) CompositeExtract 69 1
184              75:    31(fvec) CompositeConstruct 70 71 72 73 74
185                              Store 65(v4) 75
186              79:    31(fvec) Load 65(v4)
187              80:  76(f16vec) FConvert 79
188                              Store 78(v5) 80
189              82:    31(fvec) Load 33(v)
190              83:    31(fvec) Load 44(v2)
191              84:    31(fvec) FAdd 82 83
192                              Store 81(v6) 84
193              85:    31(fvec) Load 33(v)
194              86:    31(fvec) Load 44(v2)
195              87:    31(fvec) FSub 85 86
196                              Store 81(v6) 87
197              88:    31(fvec) Load 33(v)
198              89:    31(fvec) Load 44(v2)
199              90:    31(fvec) FMul 88 89
200                              Store 81(v6) 90
201              91:    31(fvec) Load 33(v)
202              92:    31(fvec) Load 44(v2)
203              93:    31(fvec) FDiv 91 92
204                              Store 81(v6) 93
205              94:    31(fvec) Load 33(v)
206              95:    31(fvec) Load 81(v6)
207              96:    31(fvec) FAdd 95 94
208                              Store 81(v6) 96
209              97:    31(fvec) Load 33(v)
210              98:    31(fvec) Load 81(v6)
211              99:    31(fvec) FSub 98 97
212                              Store 81(v6) 99
213             100:    31(fvec) Load 33(v)
214             101:    31(fvec) Load 81(v6)
215             102:    31(fvec) FMul 101 100
216                              Store 81(v6) 102
217             103:    31(fvec) Load 33(v)
218             104:    31(fvec) Load 81(v6)
219             105:    31(fvec) FDiv 104 103
220                              Store 81(v6) 105
221             108:   19(float) Load 107(f)
222             109:    31(fvec) Load 81(v6)
223             110:    31(fvec) CompositeConstruct 108 108 108 108 108
224             111:    31(fvec) FMul 109 110
225                              Store 81(v6) 111
226             112:    31(fvec) Load 81(v6)
227             113:    31(fvec) CompositeConstruct 57 57 57 57 57
228             114:    31(fvec) FMul 112 113
229                              Store 81(v6) 114
230             119:    115(int) Bitcast 118
231                              Store 117(len) 119
232             121:   19(float) Load 107(f)
233             122:    106(ptr) AccessChain 81(v6) 120
234                              Store 122 121
235             124:    106(ptr) AccessChain 81(v6) 123
236                              Store 124 57
237             125:    31(fvec) Load 33(v)
238             126:    31(fvec) Load 33(v)
239             127:    31(fvec) FAdd 126 125
240                              Store 33(v) 127
241             128:   19(float) CompositeExtract 127 4
242             129:   19(float) Load 107(f)
243             130:   19(float) FAdd 129 128
244                              Store 107(f) 130
245             131:    31(fvec) Load 33(v)
246                              Store 81(v6) 131
247             135:    115(int) Bitcast 134
248             136:6(float16_t) ConvertSToF 135
249             137: 13(f16vec2) CompositeConstruct 136 136
250                              Store 132(f162) 137
251             141:6(float16_t) Load 140(f16)
252             142:   7(f16vec) CompositeConstruct 141
253                              Store 138(f161) 142
254             146: 143(f16vec) Load 145(v11)
255             148: 143(f16vec) Load 147(v12)
256             149: 143(f16vec) ExtInst 1(GLSL.std.450) 40(FMax) 146 148
257                              Store 145(v11) 149
258             150: 143(f16vec) Load 145(v11)
259             151: 143(f16vec) Load 147(v12)
260             152: 143(f16vec) ExtInst 1(GLSL.std.450) 37(FMin) 150 151
261                              Store 145(v11) 152
262             153: 143(f16vec) Load 145(v11)
263             154: 143(f16vec) Load 147(v12)
264             155: 143(f16vec) ExtInst 1(GLSL.std.450) 48(Step) 153 154
265                              Store 145(v11) 155
266             156: 143(f16vec) Load 145(v11)
267             157: 143(f16vec) Load 147(v12)
268             159: 143(f16vec) Load 158(v13)
269             160: 143(f16vec) ExtInst 1(GLSL.std.450) 43(FClamp) 156 157 159
270                              Store 145(v11) 160
271             161: 143(f16vec) Load 145(v11)
272             162: 143(f16vec) ExtInst 1(GLSL.std.450) 27(Exp) 161
273                              Store 145(v11) 162
274             163: 143(f16vec) Load 145(v11)
275             164: 143(f16vec) ExtInst 1(GLSL.std.450) 28(Log) 163
276                              Store 145(v11) 164
277             165: 143(f16vec) Load 145(v11)
278             166: 143(f16vec) ExtInst 1(GLSL.std.450) 21(Tanh) 165
279                              Store 145(v11) 166
280             167: 143(f16vec) Load 145(v11)
281             168: 143(f16vec) ExtInst 1(GLSL.std.450) 18(Atan) 167
282                              Store 145(v11) 168
283             169: 143(f16vec) Load 145(v11)
284             170: 143(f16vec) Load 147(v12)
285             171: 143(f16vec) Load 158(v13)
286             172: 143(f16vec) ExtInst 1(GLSL.std.450) 50(Fma) 169 170 171
287                              Store 145(v11) 172
288             173:    31(fvec) Load 33(v)
289             174:    31(fvec) Load 33(v)
290             175:    31(fvec) FAdd 174 173
291                              Store 33(v) 175
292             176:    115(int) Load 117(len)
293             177:   19(float) VectorExtractDynamic 175 176
294             178:   19(float) Load 107(f)
295             179:   19(float) FAdd 178 177
296                              Store 107(f) 179
297             180: 143(f16vec) Load 158(v13)
298                              Store 158(v13) 180
299             181: 143(f16vec) Load 158(v13)
300             182:6(float16_t) CompositeExtract 181 0
301                              Store 140(f16) 182
302             184: 13(f16vec2) Load 183(vecA)
303             187: 13(f16vec2) FMul 184 186
304             188: 13(f16vec2) ExtInst 1(GLSL.std.450) 27(Exp) 187
305                              Store 183(vecA) 188
306                              Return
307                              FunctionEnd
30811(foo(f161<1>;):   7(f16vec) Function None 9
309           10(x):      8(ptr) FunctionParameter
310              12:             Label
311             189:   7(f16vec) Load 10(x)
312                              ReturnValue 189
313                              FunctionEnd
31417(foo(f161<2>;): 13(f16vec2) Function None 15
315           16(x):     14(ptr) FunctionParameter
316              18:             Label
317             192: 13(f16vec2) Load 16(x)
318                              ReturnValue 192
319                              FunctionEnd
32024(funcvec4(vf4;):   20(fvec4) Function None 22
321           23(a):     21(ptr) FunctionParameter
322              25:             Label
323             195:   20(fvec4) Load 23(a)
324                              ReturnValue 195
325                              FunctionEnd
32627(funcvector4(f1<4>;):   20(fvec4) Function None 22
327           26(a):     21(ptr) FunctionParameter
328              28:             Label
329             198:   20(fvec4) Load 26(a)
330                              ReturnValue 198
331                              FunctionEnd
332  29(testfuncs():           2 Function None 3
333              30:             Label
334          201(a):     21(ptr) Variable Function
335          202(b):     21(ptr) Variable Function
336      205(param):     21(ptr) Variable Function
337      208(param):     21(ptr) Variable Function
338          211(x):      8(ptr) Variable Function
339      212(param):      8(ptr) Variable Function
340             203:   20(fvec4) Load 202(b)
341                              Store 201(a) 203
342             204:   20(fvec4) Load 201(a)
343                              Store 202(b) 204
344             206:   20(fvec4) Load 202(b)
345                              Store 205(param) 206
346             207:   20(fvec4) FunctionCall 24(funcvec4(vf4;) 205(param)
347             209:   20(fvec4) Load 201(a)
348                              Store 208(param) 209
349             210:   20(fvec4) FunctionCall 27(funcvector4(f1<4>;) 208(param)
350             213:   7(f16vec) Load 211(x)
351                              Store 212(param) 213
352             214:   7(f16vec) FunctionCall 11(foo(f161<1>;) 212(param)
353                              Store 211(x) 214
354                              Return
355                              FunctionEnd