yum-mirror/glslang

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

Jeff BolzImplement GL_EXT_long_vector (#4132)b937eae5

main
22.7 KiB469 linesraw
1spv.longVectorBuiltins.comp
2// Module Version 10300
3// Generated by (magic number): 8000b
4// Id's are bound by 320
5
6                              Capability Shader
7                              Capability Float16
8                              Capability LongVectorEXT
9                              Capability ExpectAssumeKHR
10                              Extension  "SPV_EXT_long_vector"
11                              Extension  "SPV_KHR_expect_assume"
12               1:             ExtInstImport  "GLSL.std.450"
13                              MemoryModel Logical GLSL450
14                              EntryPoint GLCompute 4  "main"
15                              ExecutionMode 4 LocalSize 64 1 1
16                              Source GLSL 450
17                              SourceExtension  "GL_EXT_buffer_reference"
18                              SourceExtension  "GL_EXT_expect_assume"
19                              SourceExtension  "GL_EXT_long_vector"
20                              SourceExtension  "GL_EXT_shader_explicit_arithmetic_types"
21                              SourceExtension  "GL_KHR_memory_scope_semantics"
22                              Name 4  "main"
23                              Name 9  "vf"
24                              Name 14  "f"
25                              Name 28  "vf16"
26                              Name 102  "tempReturn"
27                              Name 104  "tempArg"
28                              Name 105  "ResType"
29                              Name 149  "vb"
30                              Name 176  "vi"
31                              Name 182  "vu"
32                              Name 194  "ResType"
33                              Name 241  "b"
34                              Name 248  "tempReturn"
35                              Name 251  "tempArg"
36                              Name 252  "ResType"
37                              Name 258  "tempReturn"
38                              Name 261  "tempArg"
39                              Name 269  "tempArg"
40                              Name 270  "tempArg"
41                              Name 278  "tempArg"
42                              Name 279  "tempArg"
43                              Name 280  "ResType"
44                              Name 288  "i"
45                              Decorate 319 BuiltIn WorkgroupSize
46               2:             TypeVoid
47               3:             TypeFunction 2
48               6:             TypeFloat 32
49               7:             TypeVector 6(float) 5
50               8:             TypePointer Function 7(fvec)
51              13:             TypePointer Function 6(float)
52              25:             TypeFloat 16
53              26:             TypeVector 25(float16_t) 5
54              27:             TypePointer Function 26(f16vec)
55    105(ResType):             TypeStruct 7(fvec) 7(fvec)
56             146:             TypeBool
57             147:             TypeVector 146(bool) 5
58             148:             TypePointer Function 147(bvec)
59             173:             TypeInt 32 1
60             174:             TypeVector 173(int) 5
61             175:             TypePointer Function 174(ivec)
62             179:             TypeInt 32 0
63             180:             TypeVector 179(int) 5
64             181:             TypePointer Function 180(ivec)
65    194(ResType):             TypeStruct 7(fvec) 174(ivec)
66             240:             TypePointer Function 146(bool)
67    252(ResType):             TypeStruct 180(ivec) 180(ivec)
68    280(ResType):             TypeStruct 174(ivec) 174(ivec)
69             287:             TypePointer Function 173(int)
70             316:             TypeVector 179(int) 3
71             317:    179(int) Constant 64
72             318:    179(int) Constant 1
73             319:  316(ivec3) ConstantComposite 317 318 318
74         4(main):           2 Function None 3
75               5:             Label
76           9(vf):      8(ptr) Variable Function
77           14(f):     13(ptr) Variable Function
78        28(vf16):     27(ptr) Variable Function
79 102(tempReturn):      8(ptr) Variable Function
80    104(tempArg):      8(ptr) Variable Function
81         149(vb):    148(ptr) Variable Function
82         176(vi):    175(ptr) Variable Function
83         182(vu):    181(ptr) Variable Function
84          241(b):    240(ptr) Variable Function
85 248(tempReturn):    181(ptr) Variable Function
86    251(tempArg):    181(ptr) Variable Function
87 258(tempReturn):    181(ptr) Variable Function
88    261(tempArg):    181(ptr) Variable Function
89    269(tempArg):    181(ptr) Variable Function
90    270(tempArg):    181(ptr) Variable Function
91    278(tempArg):    175(ptr) Variable Function
92    279(tempArg):    175(ptr) Variable Function
93          288(i):    287(ptr) Variable Function
94              10:     7(fvec) Load 9(vf)
95              11:     7(fvec) Load 9(vf)
96              12:     7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 10 11
97                              Store 9(vf) 12
98              15:    6(float) Load 14(f)
99              16:    6(float) Load 14(f)
100              17:     7(fvec) Load 9(vf)
101              18:     7(fvec) CompositeConstruct 15 15 15 15 15
102              19:     7(fvec) CompositeConstruct 16 16 16 16 16
103              20:     7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 18 19 17
104                              Store 9(vf) 20
105              21:     7(fvec) Load 9(vf)
106              22:     7(fvec) Load 9(vf)
107              23:     7(fvec) Load 9(vf)
108              24:     7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 21 22 23
109                              Store 9(vf) 24
110              29:  26(f16vec) Load 28(vf16)
111              30:  26(f16vec) Load 28(vf16)
112              31:  26(f16vec) Load 28(vf16)
113              32:  26(f16vec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 29 30 31
114                              Store 28(vf16) 32
115              33:     7(fvec) Load 9(vf)
116              34:     7(fvec) ExtInst 1(GLSL.std.450) 11(Radians) 33
117                              Store 9(vf) 34
118              35:     7(fvec) Load 9(vf)
119              36:     7(fvec) ExtInst 1(GLSL.std.450) 12(Degrees) 35
120                              Store 9(vf) 36
121              37:     7(fvec) Load 9(vf)
122              38:     7(fvec) ExtInst 1(GLSL.std.450) 13(Sin) 37
123                              Store 9(vf) 38
124              39:     7(fvec) Load 9(vf)
125              40:     7(fvec) ExtInst 1(GLSL.std.450) 14(Cos) 39
126                              Store 9(vf) 40
127              41:     7(fvec) Load 9(vf)
128              42:     7(fvec) ExtInst 1(GLSL.std.450) 15(Tan) 41
129                              Store 9(vf) 42
130              43:     7(fvec) Load 9(vf)
131              44:     7(fvec) ExtInst 1(GLSL.std.450) 16(Asin) 43
132                              Store 9(vf) 44
133              45:     7(fvec) Load 9(vf)
134              46:     7(fvec) ExtInst 1(GLSL.std.450) 17(Acos) 45
135                              Store 9(vf) 46
136              47:     7(fvec) Load 9(vf)
137              48:     7(fvec) ExtInst 1(GLSL.std.450) 18(Atan) 47
138                              Store 9(vf) 48
139              49:     7(fvec) Load 9(vf)
140              50:     7(fvec) Load 9(vf)
141              51:     7(fvec) ExtInst 1(GLSL.std.450) 25(Atan2) 49 50
142                              Store 9(vf) 51
143              52:     7(fvec) Load 9(vf)
144              53:     7(fvec) ExtInst 1(GLSL.std.450) 19(Sinh) 52
145                              Store 9(vf) 53
146              54:     7(fvec) Load 9(vf)
147              55:     7(fvec) ExtInst 1(GLSL.std.450) 20(Cosh) 54
148                              Store 9(vf) 55
149              56:     7(fvec) Load 9(vf)
150              57:     7(fvec) ExtInst 1(GLSL.std.450) 21(Tanh) 56
151                              Store 9(vf) 57
152              58:     7(fvec) Load 9(vf)
153              59:     7(fvec) ExtInst 1(GLSL.std.450) 22(Asinh) 58
154                              Store 9(vf) 59
155              60:     7(fvec) Load 9(vf)
156              61:     7(fvec) ExtInst 1(GLSL.std.450) 23(Acosh) 60
157                              Store 9(vf) 61
158              62:     7(fvec) Load 9(vf)
159              63:     7(fvec) ExtInst 1(GLSL.std.450) 24(Atanh) 62
160                              Store 9(vf) 63
161              64:     7(fvec) Load 9(vf)
162              65:     7(fvec) Load 9(vf)
163              66:     7(fvec) ExtInst 1(GLSL.std.450) 26(Pow) 64 65
164                              Store 9(vf) 66
165              67:     7(fvec) Load 9(vf)
166              68:     7(fvec) ExtInst 1(GLSL.std.450) 27(Exp) 67
167                              Store 9(vf) 68
168              69:     7(fvec) Load 9(vf)
169              70:     7(fvec) ExtInst 1(GLSL.std.450) 28(Log) 69
170                              Store 9(vf) 70
171              71:     7(fvec) Load 9(vf)
172              72:     7(fvec) ExtInst 1(GLSL.std.450) 29(Exp2) 71
173                              Store 9(vf) 72
174              73:     7(fvec) Load 9(vf)
175              74:     7(fvec) ExtInst 1(GLSL.std.450) 30(Log2) 73
176                              Store 9(vf) 74
177              75:     7(fvec) Load 9(vf)
178              76:     7(fvec) ExtInst 1(GLSL.std.450) 31(Sqrt) 75
179                              Store 9(vf) 76
180              77:     7(fvec) Load 9(vf)
181              78:     7(fvec) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 77
182                              Store 9(vf) 78
183              79:     7(fvec) Load 9(vf)
184              80:     7(fvec) ExtInst 1(GLSL.std.450) 4(FAbs) 79
185                              Store 9(vf) 80
186              81:     7(fvec) Load 9(vf)
187              82:     7(fvec) ExtInst 1(GLSL.std.450) 6(FSign) 81
188                              Store 9(vf) 82
189              83:     7(fvec) Load 9(vf)
190              84:     7(fvec) ExtInst 1(GLSL.std.450) 8(Floor) 83
191                              Store 9(vf) 84
192              85:     7(fvec) Load 9(vf)
193              86:     7(fvec) ExtInst 1(GLSL.std.450) 3(Trunc) 85
194                              Store 9(vf) 86
195              87:     7(fvec) Load 9(vf)
196              88:     7(fvec) ExtInst 1(GLSL.std.450) 1(Round) 87
197                              Store 9(vf) 88
198              89:     7(fvec) Load 9(vf)
199              90:     7(fvec) ExtInst 1(GLSL.std.450) 2(RoundEven) 89
200                              Store 9(vf) 90
201              91:     7(fvec) Load 9(vf)
202              92:     7(fvec) ExtInst 1(GLSL.std.450) 9(Ceil) 91
203                              Store 9(vf) 92
204              93:     7(fvec) Load 9(vf)
205              94:     7(fvec) ExtInst 1(GLSL.std.450) 10(Fract) 93
206                              Store 9(vf) 94
207              95:     7(fvec) Load 9(vf)
208              96:    6(float) Load 14(f)
209              97:     7(fvec) CompositeConstruct 96 96 96 96 96
210              98:     7(fvec) FMod 95 97
211                              Store 9(vf) 98
212              99:     7(fvec) Load 9(vf)
213             100:     7(fvec) Load 9(vf)
214             101:     7(fvec) FMod 99 100
215                              Store 9(vf) 101
216             103:     7(fvec) Load 9(vf)
217             106:105(ResType) ExtInst 1(GLSL.std.450) 36(ModfStruct) 103
218             107:     7(fvec) CompositeExtract 106 1
219                              Store 104(tempArg) 107
220             108:     7(fvec) CompositeExtract 106 0
221                              Store 102(tempReturn) 108
222             109:     7(fvec) Load 104(tempArg)
223                              Store 9(vf) 109
224             110:     7(fvec) Load 102(tempReturn)
225                              Store 9(vf) 110
226             111:     7(fvec) Load 9(vf)
227             112:    6(float) Load 14(f)
228             113:     7(fvec) CompositeConstruct 112 112 112 112 112
229             114:     7(fvec) ExtInst 1(GLSL.std.450) 37(FMin) 111 113
230                              Store 9(vf) 114
231             115:     7(fvec) Load 9(vf)
232             116:     7(fvec) Load 9(vf)
233             117:     7(fvec) ExtInst 1(GLSL.std.450) 37(FMin) 115 116
234                              Store 9(vf) 117
235             118:     7(fvec) Load 9(vf)
236             119:    6(float) Load 14(f)
237             120:     7(fvec) CompositeConstruct 119 119 119 119 119
238             121:     7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 118 120
239                              Store 9(vf) 121
240             122:     7(fvec) Load 9(vf)
241             123:     7(fvec) Load 9(vf)
242             124:     7(fvec) ExtInst 1(GLSL.std.450) 40(FMax) 122 123
243                              Store 9(vf) 124
244             125:     7(fvec) Load 9(vf)
245             126:    6(float) Load 14(f)
246             127:    6(float) Load 14(f)
247             128:     7(fvec) CompositeConstruct 126 126 126 126 126
248             129:     7(fvec) CompositeConstruct 127 127 127 127 127
249             130:     7(fvec) ExtInst 1(GLSL.std.450) 43(FClamp) 125 128 129
250                              Store 9(vf) 130
251             131:     7(fvec) Load 9(vf)
252             132:     7(fvec) Load 9(vf)
253             133:     7(fvec) Load 9(vf)
254             134:     7(fvec) ExtInst 1(GLSL.std.450) 43(FClamp) 131 132 133
255                              Store 9(vf) 134
256             135:     7(fvec) Load 9(vf)
257             136:     7(fvec) Load 9(vf)
258             137:    6(float) Load 14(f)
259             138:     7(fvec) CompositeConstruct 137 137 137 137 137
260             139:     7(fvec) ExtInst 1(GLSL.std.450) 46(FMix) 135 136 138
261                              Store 9(vf) 139
262             140:     7(fvec) Load 9(vf)
263             141:     7(fvec) Load 9(vf)
264             142:     7(fvec) Load 9(vf)
265             143:     7(fvec) ExtInst 1(GLSL.std.450) 46(FMix) 140 141 142
266                              Store 9(vf) 143
267             144:     7(fvec) Load 9(vf)
268             145:     7(fvec) Load 9(vf)
269             150:   147(bvec) Load 149(vb)
270             151:     7(fvec) Select 150 145 144
271                              Store 9(vf) 151
272             152:     7(fvec) Load 9(vf)
273             153:     7(fvec) Load 9(vf)
274             154:     7(fvec) ExtInst 1(GLSL.std.450) 48(Step) 152 153
275                              Store 9(vf) 154
276             155:    6(float) Load 14(f)
277             156:     7(fvec) Load 9(vf)
278             157:     7(fvec) CompositeConstruct 155 155 155 155 155
279             158:     7(fvec) ExtInst 1(GLSL.std.450) 48(Step) 157 156
280                              Store 9(vf) 158
281             159:     7(fvec) Load 9(vf)
282             160:     7(fvec) Load 9(vf)
283             161:     7(fvec) Load 9(vf)
284             162:     7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 159 160 161
285                              Store 9(vf) 162
286             163:    6(float) Load 14(f)
287             164:    6(float) Load 14(f)
288             165:     7(fvec) Load 9(vf)
289             166:     7(fvec) CompositeConstruct 163 163 163 163 163
290             167:     7(fvec) CompositeConstruct 164 164 164 164 164
291             168:     7(fvec) ExtInst 1(GLSL.std.450) 49(SmoothStep) 166 167 165
292                              Store 9(vf) 168
293             169:     7(fvec) Load 9(vf)
294             170:   147(bvec) IsNan 169
295                              Store 149(vb) 170
296             171:     7(fvec) Load 9(vf)
297             172:   147(bvec) IsInf 171
298                              Store 149(vb) 172
299             177:     7(fvec) Load 9(vf)
300             178:   174(ivec) Bitcast 177
301                              Store 176(vi) 178
302             183:     7(fvec) Load 9(vf)
303             184:   180(ivec) Bitcast 183
304                              Store 182(vu) 184
305             185:   174(ivec) Load 176(vi)
306             186:     7(fvec) Bitcast 185
307                              Store 9(vf) 186
308             187:   180(ivec) Load 182(vu)
309             188:     7(fvec) Bitcast 187
310                              Store 9(vf) 188
311             189:     7(fvec) Load 9(vf)
312             190:     7(fvec) Load 9(vf)
313             191:     7(fvec) Load 9(vf)
314             192:     7(fvec) ExtInst 1(GLSL.std.450) 50(Fma) 189 190 191
315                              Store 9(vf) 192
316             193:     7(fvec) Load 9(vf)
317             195:194(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 193
318             196:   174(ivec) CompositeExtract 195 1
319                              Store 176(vi) 196
320             197:     7(fvec) CompositeExtract 195 0
321                              Store 9(vf) 197
322             198:     7(fvec) Load 9(vf)
323             199:   174(ivec) Load 176(vi)
324             200:     7(fvec) ExtInst 1(GLSL.std.450) 53(Ldexp) 198 199
325                              Store 9(vf) 200
326             201:     7(fvec) Load 9(vf)
327             202:    6(float) ExtInst 1(GLSL.std.450) 66(Length) 201
328                              Store 14(f) 202
329             203:     7(fvec) Load 9(vf)
330             204:     7(fvec) Load 9(vf)
331             205:    6(float) ExtInst 1(GLSL.std.450) 67(Distance) 203 204
332                              Store 14(f) 205
333             206:     7(fvec) Load 9(vf)
334             207:     7(fvec) Load 9(vf)
335             208:    6(float) Dot 206 207
336                              Store 14(f) 208
337             209:     7(fvec) Load 9(vf)
338             210:     7(fvec) ExtInst 1(GLSL.std.450) 69(Normalize) 209
339                              Store 9(vf) 210
340             211:     7(fvec) Load 9(vf)
341             212:     7(fvec) Load 9(vf)
342             213:     7(fvec) Load 9(vf)
343             214:     7(fvec) ExtInst 1(GLSL.std.450) 70(FaceForward) 211 212 213
344                              Store 9(vf) 214
345             215:     7(fvec) Load 9(vf)
346             216:     7(fvec) Load 9(vf)
347             217:     7(fvec) ExtInst 1(GLSL.std.450) 71(Reflect) 215 216
348                              Store 9(vf) 217
349             218:     7(fvec) Load 9(vf)
350             219:     7(fvec) Load 9(vf)
351             220:    6(float) Load 14(f)
352             221:     7(fvec) ExtInst 1(GLSL.std.450) 72(Refract) 218 219 220
353                              Store 9(vf) 221
354             222:     7(fvec) Load 9(vf)
355             223:     7(fvec) Load 9(vf)
356             224:   147(bvec) FOrdLessThan 222 223
357                              Store 149(vb) 224
358             225:     7(fvec) Load 9(vf)
359             226:     7(fvec) Load 9(vf)
360             227:   147(bvec) FOrdLessThanEqual 225 226
361                              Store 149(vb) 227
362             228:     7(fvec) Load 9(vf)
363             229:     7(fvec) Load 9(vf)
364             230:   147(bvec) FOrdGreaterThan 228 229
365                              Store 149(vb) 230
366             231:     7(fvec) Load 9(vf)
367             232:     7(fvec) Load 9(vf)
368             233:   147(bvec) FOrdGreaterThanEqual 231 232
369                              Store 149(vb) 233
370             234:     7(fvec) Load 9(vf)
371             235:     7(fvec) Load 9(vf)
372             236:   147(bvec) FOrdEqual 234 235
373                              Store 149(vb) 236
374             237:     7(fvec) Load 9(vf)
375             238:     7(fvec) Load 9(vf)
376             239:   147(bvec) FUnordNotEqual 237 238
377                              Store 149(vb) 239
378             242:   147(bvec) Load 149(vb)
379             243:   146(bool) Any 242
380                              Store 241(b) 243
381             244:   147(bvec) Load 149(vb)
382             245:   146(bool) All 244
383                              Store 241(b) 245
384             246:   147(bvec) Load 149(vb)
385             247:   147(bvec) LogicalNot 246
386                              Store 149(vb) 247
387             249:   180(ivec) Load 182(vu)
388             250:   180(ivec) Load 182(vu)
389             253:252(ResType) IAddCarry 249 250
390             254:   180(ivec) CompositeExtract 253 1
391                              Store 251(tempArg) 254
392             255:   180(ivec) CompositeExtract 253 0
393                              Store 248(tempReturn) 255
394             256:   180(ivec) Load 251(tempArg)
395                              Store 182(vu) 256
396             257:   180(ivec) Load 248(tempReturn)
397                              Store 182(vu) 257
398             259:   180(ivec) Load 182(vu)
399             260:   180(ivec) Load 182(vu)
400             262:252(ResType) ISubBorrow 259 260
401             263:   180(ivec) CompositeExtract 262 1
402                              Store 261(tempArg) 263
403             264:   180(ivec) CompositeExtract 262 0
404                              Store 258(tempReturn) 264
405             265:   180(ivec) Load 261(tempArg)
406                              Store 182(vu) 265
407             266:   180(ivec) Load 258(tempReturn)
408                              Store 182(vu) 266
409             267:   180(ivec) Load 182(vu)
410             268:   180(ivec) Load 182(vu)
411             271:252(ResType) UMulExtended 267 268
412             272:   180(ivec) CompositeExtract 271 0
413                              Store 270(tempArg) 272
414             273:   180(ivec) CompositeExtract 271 1
415                              Store 269(tempArg) 273
416             274:   180(ivec) Load 269(tempArg)
417                              Store 182(vu) 274
418             275:   180(ivec) Load 270(tempArg)
419                              Store 182(vu) 275
420             276:   174(ivec) Load 176(vi)
421             277:   174(ivec) Load 176(vi)
422             281:280(ResType) SMulExtended 276 277
423             282:   174(ivec) CompositeExtract 281 0
424                              Store 279(tempArg) 282
425             283:   174(ivec) CompositeExtract 281 1
426                              Store 278(tempArg) 283
427             284:   174(ivec) Load 278(tempArg)
428                              Store 176(vi) 284
429             285:   174(ivec) Load 279(tempArg)
430                              Store 176(vi) 285
431             286:   180(ivec) Load 182(vu)
432             289:    173(int) Load 288(i)
433             290:    173(int) Load 288(i)
434             291:   180(ivec) BitFieldUExtract 286 289 290
435                              Store 182(vu) 291
436             292:   180(ivec) Load 182(vu)
437             293:   180(ivec) Load 182(vu)
438             294:    173(int) Load 288(i)
439             295:    173(int) Load 288(i)
440             296:   180(ivec) BitFieldInsert 292 293 294 295
441                              Store 182(vu) 296
442             297:   180(ivec) Load 182(vu)
443             298:   180(ivec) BitReverse 297
444                              Store 182(vu) 298
445             299:   180(ivec) Load 182(vu)
446             300:   174(ivec) BitCount 299
447                              Store 176(vi) 300
448             301:   180(ivec) Load 182(vu)
449             302:   174(ivec) ExtInst 1(GLSL.std.450) 73(FindILsb) 301
450                              Store 176(vi) 302
451             303:   180(ivec) Load 182(vu)
452             304:   174(ivec) ExtInst 1(GLSL.std.450) 75(FindUMsb) 303
453                              Store 176(vi) 304
454             305:   180(ivec) Load 182(vu)
455             306:   180(ivec) Load 182(vu)
456             307:   147(bvec) Load 149(vb)
457             308:   180(ivec) Select 307 306 305
458                              Store 182(vu) 308
459             309:   147(bvec) Load 149(vb)
460             310:   147(bvec) Load 149(vb)
461             311:   147(bvec) Load 149(vb)
462             312:   147(bvec) Select 311 310 309
463                              Store 149(vb) 312
464             313:   180(ivec) Load 182(vu)
465             314:   180(ivec) Load 182(vu)
466             315:   180(ivec) ExpectKHR 313 314
467                              Store 182(vu) 315
468                              Return
469                              FunctionEnd