1spv.intOps.vert
2// Module Version 10000
3// Generated by (magic number): 8000b
4// Id's are bound by 302
5
6                              Capability Shader
7               1:             ExtInstImport  "GLSL.std.450"
8                              MemoryModel Logical GLSL450
9                              EntryPoint Vertex 4  "main" 9 15 21 26 53 72 88 105 137 156 160 172 189 202 281
10                              Source ESSL 310
11                              Name 4  "main"
12                              Name 9  "iout"
13                              Name 15  "uout"
14                              Name 21  "fout"
15                              Name 26  "u2"
16                              Name 30  "u2out"
17                              Name 31  "ResType"
18                              Name 53  "u1"
19                              Name 57  "u1out"
20                              Name 58  "ResType"
21                              Name 72  "u4"
22                              Name 76  "u4outHi"
23                              Name 77  "u4outLow"
24                              Name 78  "ResType"
25                              Name 88  "i4"
26                              Name 92  "i4outHi"
27                              Name 93  "i4outLow"
28                              Name 94  "ResType"
29                              Name 105  "v3"
30                              Name 109  "i3out"
31                              Name 110  "ResType"
32                              Name 137  "v1"
33                              Name 140  "i1out"
34                              Name 141  "ResType"
35                              Name 156  "v2"
36                              Name 160  "i2"
37                              Name 172  "i1"
38                              Name 189  "u3"
39                              Name 202  "i3"
40                              Name 281  "v4"
41                              Decorate 9(iout) Location 1
42                              Decorate 15(uout) Location 0
43                              Decorate 21(fout) Location 2
44                              Decorate 26(u2) Location 1
45                              Decorate 53(u1) Location 0
46                              Decorate 72(u4) Location 3
47                              Decorate 88(i4) Location 11
48                              Decorate 105(v3) Location 6
49                              Decorate 137(v1) Location 4
50                              Decorate 156(v2) Location 5
51                              Decorate 160(i2) Location 9
52                              Decorate 172(i1) Location 8
53                              Decorate 189(u3) Location 2
54                              Decorate 202(i3) Location 10
55                              Decorate 281(v4) Location 7
56               2:             TypeVoid
57               3:             TypeFunction 2
58               6:             TypeInt 32 1
59               7:             TypeVector 6(int) 4
60               8:             TypePointer Output 7(ivec4)
61         9(iout):      8(ptr) Variable Output
62              10:      6(int) Constant 0
63              11:    7(ivec4) ConstantComposite 10 10 10 10
64              12:             TypeInt 32 0
65              13:             TypeVector 12(int) 4
66              14:             TypePointer Output 13(ivec4)
67        15(uout):     14(ptr) Variable Output
68              16:     12(int) Constant 0
69              17:   13(ivec4) ConstantComposite 16 16 16 16
70              18:             TypeFloat 32
71              19:             TypeVector 18(float) 4
72              20:             TypePointer Output 19(fvec4)
73        21(fout):     20(ptr) Variable Output
74              22:   18(float) Constant 0
75              23:   19(fvec4) ConstantComposite 22 22 22 22
76              24:             TypeVector 12(int) 2
77              25:             TypePointer Input 24(ivec2)
78          26(u2):     25(ptr) Variable Input
79              29:             TypePointer Function 24(ivec2)
80     31(ResType):             TypeStruct 24(ivec2) 24(ivec2)
81              38:             TypePointer Output 12(int)
82              41:     12(int) Constant 1
83              52:             TypePointer Input 12(int)
84          53(u1):     52(ptr) Variable Input
85              56:             TypePointer Function 12(int)
86     58(ResType):             TypeStruct 12(int) 12(int)
87              71:             TypePointer Input 13(ivec4)
88          72(u4):     71(ptr) Variable Input
89              75:             TypePointer Function 13(ivec4)
90     78(ResType):             TypeStruct 13(ivec4) 13(ivec4)
91              87:             TypePointer Input 7(ivec4)
92          88(i4):     87(ptr) Variable Input
93              91:             TypePointer Function 7(ivec4)
94     94(ResType):             TypeStruct 7(ivec4) 7(ivec4)
95             103:             TypeVector 18(float) 3
96             104:             TypePointer Input 103(fvec3)
97         105(v3):    104(ptr) Variable Input
98             107:             TypeVector 6(int) 3
99             108:             TypePointer Function 107(ivec3)
100    110(ResType):             TypeStruct 103(fvec3) 107(ivec3)
101             117:             TypePointer Output 18(float)
102             122:     12(int) Constant 2
103             129:             TypePointer Output 6(int)
104             136:             TypePointer Input 18(float)
105         137(v1):    136(ptr) Variable Input
106             139:             TypePointer Function 6(int)
107    141(ResType):             TypeStruct 18(float) 6(int)
108             154:             TypeVector 18(float) 2
109             155:             TypePointer Input 154(fvec2)
110         156(v2):    155(ptr) Variable Input
111             158:             TypeVector 6(int) 2
112             159:             TypePointer Input 158(ivec2)
113         160(i2):    159(ptr) Variable Input
114             171:             TypePointer Input 6(int)
115         172(i1):    171(ptr) Variable Input
116             180:      6(int) Constant 4
117             181:      6(int) Constant 5
118             187:             TypeVector 12(int) 3
119             188:             TypePointer Input 187(ivec3)
120         189(u3):    188(ptr) Variable Input
121             201:             TypePointer Input 107(ivec3)
122         202(i3):    201(ptr) Variable Input
123             280:             TypePointer Input 19(fvec4)
124         281(v4):    280(ptr) Variable Input
125         4(main):           2 Function None 3
126               5:             Label
127       30(u2out):     29(ptr) Variable Function
128       57(u1out):     56(ptr) Variable Function
129     76(u4outHi):     75(ptr) Variable Function
130    77(u4outLow):     75(ptr) Variable Function
131     92(i4outHi):     91(ptr) Variable Function
132    93(i4outLow):     91(ptr) Variable Function
133      109(i3out):    108(ptr) Variable Function
134      140(i1out):    139(ptr) Variable Function
135                              Store 9(iout) 11
136                              Store 15(uout) 17
137                              Store 21(fout) 23
138              27:   24(ivec2) Load 26(u2)
139              28:   24(ivec2) Load 26(u2)
140              32: 31(ResType) IAddCarry 27 28
141              33:   24(ivec2) CompositeExtract 32 1
142                              Store 30(u2out) 33
143              34:   24(ivec2) CompositeExtract 32 0
144              35:   13(ivec4) Load 15(uout)
145              36:   24(ivec2) VectorShuffle 35 35 0 1
146              37:   24(ivec2) IAdd 36 34
147              39:     38(ptr) AccessChain 15(uout) 16
148              40:     12(int) CompositeExtract 37 0
149                              Store 39 40
150              42:     38(ptr) AccessChain 15(uout) 41
151              43:     12(int) CompositeExtract 37 1
152                              Store 42 43
153              44:   24(ivec2) Load 30(u2out)
154              45:   13(ivec4) Load 15(uout)
155              46:   24(ivec2) VectorShuffle 45 45 0 1
156              47:   24(ivec2) IAdd 46 44
157              48:     38(ptr) AccessChain 15(uout) 16
158              49:     12(int) CompositeExtract 47 0
159                              Store 48 49
160              50:     38(ptr) AccessChain 15(uout) 41
161              51:     12(int) CompositeExtract 47 1
162                              Store 50 51
163              54:     12(int) Load 53(u1)
164              55:     12(int) Load 53(u1)
165              59: 58(ResType) ISubBorrow 54 55
166              60:     12(int) CompositeExtract 59 1
167                              Store 57(u1out) 60
168              61:     12(int) CompositeExtract 59 0
169              62:     38(ptr) AccessChain 15(uout) 16
170              63:     12(int) Load 62
171              64:     12(int) IAdd 63 61
172              65:     38(ptr) AccessChain 15(uout) 16
173                              Store 65 64
174              66:     12(int) Load 57(u1out)
175              67:     38(ptr) AccessChain 15(uout) 16
176              68:     12(int) Load 67
177              69:     12(int) IAdd 68 66
178              70:     38(ptr) AccessChain 15(uout) 16
179                              Store 70 69
180              73:   13(ivec4) Load 72(u4)
181              74:   13(ivec4) Load 72(u4)
182              79: 78(ResType) UMulExtended 73 74
183              80:   13(ivec4) CompositeExtract 79 0
184                              Store 77(u4outLow) 80
185              81:   13(ivec4) CompositeExtract 79 1
186                              Store 76(u4outHi) 81
187              82:   13(ivec4) Load 76(u4outHi)
188              83:   13(ivec4) Load 77(u4outLow)
189              84:   13(ivec4) IAdd 82 83
190              85:   13(ivec4) Load 15(uout)
191              86:   13(ivec4) IAdd 85 84
192                              Store 15(uout) 86
193              89:    7(ivec4) Load 88(i4)
194              90:    7(ivec4) Load 88(i4)
195              95: 94(ResType) SMulExtended 89 90
196              96:    7(ivec4) CompositeExtract 95 0
197                              Store 93(i4outLow) 96
198              97:    7(ivec4) CompositeExtract 95 1
199                              Store 92(i4outHi) 97
200              98:    7(ivec4) Load 93(i4outLow)
201              99:    7(ivec4) Load 92(i4outHi)
202             100:    7(ivec4) IAdd 98 99
203             101:    7(ivec4) Load 9(iout)
204             102:    7(ivec4) IAdd 101 100
205                              Store 9(iout) 102
206             106:  103(fvec3) Load 105(v3)
207             111:110(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 106
208             112:  107(ivec3) CompositeExtract 111 1
209                              Store 109(i3out) 112
210             113:  103(fvec3) CompositeExtract 111 0
211             114:   19(fvec4) Load 21(fout)
212             115:  103(fvec3) VectorShuffle 114 114 0 1 2
213             116:  103(fvec3) FAdd 115 113
214             118:    117(ptr) AccessChain 21(fout) 16
215             119:   18(float) CompositeExtract 116 0
216                              Store 118 119
217             120:    117(ptr) AccessChain 21(fout) 41
218             121:   18(float) CompositeExtract 116 1
219                              Store 120 121
220             123:    117(ptr) AccessChain 21(fout) 122
221             124:   18(float) CompositeExtract 116 2
222                              Store 123 124
223             125:  107(ivec3) Load 109(i3out)
224             126:    7(ivec4) Load 9(iout)
225             127:  107(ivec3) VectorShuffle 126 126 0 1 2
226             128:  107(ivec3) IAdd 127 125
227             130:    129(ptr) AccessChain 9(iout) 16
228             131:      6(int) CompositeExtract 128 0
229                              Store 130 131
230             132:    129(ptr) AccessChain 9(iout) 41
231             133:      6(int) CompositeExtract 128 1
232                              Store 132 133
233             134:    129(ptr) AccessChain 9(iout) 122
234             135:      6(int) CompositeExtract 128 2
235                              Store 134 135
236             138:   18(float) Load 137(v1)
237             142:141(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 138
238             143:      6(int) CompositeExtract 142 1
239                              Store 140(i1out) 143
240             144:   18(float) CompositeExtract 142 0
241             145:    117(ptr) AccessChain 21(fout) 16
242             146:   18(float) Load 145
243             147:   18(float) FAdd 146 144
244             148:    117(ptr) AccessChain 21(fout) 16
245                              Store 148 147
246             149:      6(int) Load 140(i1out)
247             150:    129(ptr) AccessChain 9(iout) 16
248             151:      6(int) Load 150
249             152:      6(int) IAdd 151 149
250             153:    129(ptr) AccessChain 9(iout) 16
251                              Store 153 152
252             157:  154(fvec2) Load 156(v2)
253             161:  158(ivec2) Load 160(i2)
254             162:  154(fvec2) ExtInst 1(GLSL.std.450) 53(Ldexp) 157 161
255             163:   19(fvec4) Load 21(fout)
256             164:  154(fvec2) VectorShuffle 163 163 0 1
257             165:  154(fvec2) FAdd 164 162
258             166:    117(ptr) AccessChain 21(fout) 16
259             167:   18(float) CompositeExtract 165 0
260                              Store 166 167
261             168:    117(ptr) AccessChain 21(fout) 41
262             169:   18(float) CompositeExtract 165 1
263                              Store 168 169
264             170:   18(float) Load 137(v1)
265             173:      6(int) Load 172(i1)
266             174:   18(float) ExtInst 1(GLSL.std.450) 53(Ldexp) 170 173
267             175:    117(ptr) AccessChain 21(fout) 16
268             176:   18(float) Load 175
269             177:   18(float) FAdd 176 174
270             178:    117(ptr) AccessChain 21(fout) 16
271                              Store 178 177
272             179:      6(int) Load 172(i1)
273             182:      6(int) BitFieldSExtract 179 180 181
274             183:    129(ptr) AccessChain 9(iout) 16
275             184:      6(int) Load 183
276             185:      6(int) IAdd 184 182
277             186:    129(ptr) AccessChain 9(iout) 16
278                              Store 186 185
279             190:  187(ivec3) Load 189(u3)
280             191:  187(ivec3) BitFieldUExtract 190 180 181
281             192:   13(ivec4) Load 15(uout)
282             193:  187(ivec3) VectorShuffle 192 192 0 1 2
283             194:  187(ivec3) IAdd 193 191
284             195:     38(ptr) AccessChain 15(uout) 16
285             196:     12(int) CompositeExtract 194 0
286                              Store 195 196
287             197:     38(ptr) AccessChain 15(uout) 41
288             198:     12(int) CompositeExtract 194 1
289                              Store 197 198
290             199:     38(ptr) AccessChain 15(uout) 122
291             200:     12(int) CompositeExtract 194 2
292                              Store 199 200
293             203:  107(ivec3) Load 202(i3)
294             204:  107(ivec3) Load 202(i3)
295             205:  107(ivec3) BitFieldInsert 203 204 180 181
296             206:    7(ivec4) Load 9(iout)
297             207:  107(ivec3) VectorShuffle 206 206 0 1 2
298             208:  107(ivec3) IAdd 207 205
299             209:    129(ptr) AccessChain 9(iout) 16
300             210:      6(int) CompositeExtract 208 0
301                              Store 209 210
302             211:    129(ptr) AccessChain 9(iout) 41
303             212:      6(int) CompositeExtract 208 1
304                              Store 211 212
305             213:    129(ptr) AccessChain 9(iout) 122
306             214:      6(int) CompositeExtract 208 2
307                              Store 213 214
308             215:     12(int) Load 53(u1)
309             216:     12(int) Load 53(u1)
310             217:     12(int) BitFieldInsert 215 216 180 181
311             218:     38(ptr) AccessChain 15(uout) 16
312             219:     12(int) Load 218
313             220:     12(int) IAdd 219 217
314             221:     38(ptr) AccessChain 15(uout) 16
315                              Store 221 220
316             222:  158(ivec2) Load 160(i2)
317             223:  158(ivec2) BitReverse 222
318             224:    7(ivec4) Load 9(iout)
319             225:  158(ivec2) VectorShuffle 224 224 0 1
320             226:  158(ivec2) IAdd 225 223
321             227:    129(ptr) AccessChain 9(iout) 16
322             228:      6(int) CompositeExtract 226 0
323                              Store 227 228
324             229:    129(ptr) AccessChain 9(iout) 41
325             230:      6(int) CompositeExtract 226 1
326                              Store 229 230
327             231:   13(ivec4) Load 72(u4)
328             232:   13(ivec4) BitReverse 231
329             233:   13(ivec4) Load 15(uout)
330             234:   13(ivec4) IAdd 233 232
331                              Store 15(uout) 234
332             235:      6(int) Load 172(i1)
333             236:      6(int) BitCount 235
334             237:    129(ptr) AccessChain 9(iout) 16
335             238:      6(int) Load 237
336             239:      6(int) IAdd 238 236
337             240:    129(ptr) AccessChain 9(iout) 16
338                              Store 240 239
339             241:  187(ivec3) Load 189(u3)
340             242:  107(ivec3) BitCount 241
341             243:    7(ivec4) Load 9(iout)
342             244:  107(ivec3) VectorShuffle 243 243 0 1 2
343             245:  107(ivec3) IAdd 244 242
344             246:    129(ptr) AccessChain 9(iout) 16
345             247:      6(int) CompositeExtract 245 0
346                              Store 246 247
347             248:    129(ptr) AccessChain 9(iout) 41
348             249:      6(int) CompositeExtract 245 1
349                              Store 248 249
350             250:    129(ptr) AccessChain 9(iout) 122
351             251:      6(int) CompositeExtract 245 2
352                              Store 250 251
353             252:  158(ivec2) Load 160(i2)
354             253:  158(ivec2) ExtInst 1(GLSL.std.450) 73(FindILsb) 252
355             254:    7(ivec4) Load 9(iout)
356             255:  158(ivec2) VectorShuffle 254 254 0 1
357             256:  158(ivec2) IAdd 255 253
358             257:    129(ptr) AccessChain 9(iout) 16
359             258:      6(int) CompositeExtract 256 0
360                              Store 257 258
361             259:    129(ptr) AccessChain 9(iout) 41
362             260:      6(int) CompositeExtract 256 1
363                              Store 259 260
364             261:   13(ivec4) Load 72(u4)
365             262:    7(ivec4) ExtInst 1(GLSL.std.450) 73(FindILsb) 261
366             263:    7(ivec4) Load 9(iout)
367             264:    7(ivec4) IAdd 263 262
368                              Store 9(iout) 264
369             265:      6(int) Load 172(i1)
370             266:      6(int) ExtInst 1(GLSL.std.450) 74(FindSMsb) 265
371             267:    129(ptr) AccessChain 9(iout) 16
372             268:      6(int) Load 267
373             269:      6(int) IAdd 268 266
374             270:    129(ptr) AccessChain 9(iout) 16
375                              Store 270 269
376             271:   24(ivec2) Load 26(u2)
377             272:  158(ivec2) ExtInst 1(GLSL.std.450) 75(FindUMsb) 271
378             273:    7(ivec4) Load 9(iout)
379             274:  158(ivec2) VectorShuffle 273 273 0 1
380             275:  158(ivec2) IAdd 274 272
381             276:    129(ptr) AccessChain 9(iout) 16
382             277:      6(int) CompositeExtract 275 0
383                              Store 276 277
384             278:    129(ptr) AccessChain 9(iout) 41
385             279:      6(int) CompositeExtract 275 1
386                              Store 278 279
387             282:   19(fvec4) Load 281(v4)
388             283:     12(int) ExtInst 1(GLSL.std.450) 55(PackUnorm4x8) 282
389             284:     38(ptr) AccessChain 15(uout) 16
390             285:     12(int) Load 284
391             286:     12(int) IAdd 285 283
392             287:     38(ptr) AccessChain 15(uout) 16
393                              Store 287 286
394             288:   19(fvec4) Load 281(v4)
395             289:     12(int) ExtInst 1(GLSL.std.450) 54(PackSnorm4x8) 288
396             290:     38(ptr) AccessChain 15(uout) 16
397             291:     12(int) Load 290
398             292:     12(int) IAdd 291 289
399             293:     38(ptr) AccessChain 15(uout) 16
400                              Store 293 292
401             294:     12(int) Load 53(u1)
402             295:   19(fvec4) ExtInst 1(GLSL.std.450) 64(UnpackUnorm4x8) 294
403             296:   19(fvec4) Load 21(fout)
404             297:   19(fvec4) FAdd 296 295
405                              Store 21(fout) 297
406             298:     12(int) Load 53(u1)
407             299:   19(fvec4) ExtInst 1(GLSL.std.450) 63(UnpackSnorm4x8) 298
408             300:   19(fvec4) Load 21(fout)
409             301:   19(fvec4) FAdd 300 299
410                              Store 21(fout) 301
411                              Return
412                              FunctionEnd
413