blob: f9059c657ab5c3c0aa4f97ce4cfa90055e82b355 [file] [log] [blame]
spv.Operations.frag
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 591
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 11 22 220 296 314 547 588
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
Name 4 "main"
Name 9 "v"
Name 11 "uv4"
Name 20 "i"
Name 22 "ui"
Name 155 "swizzleTemp"
Name 189 "ub41"
Name 196 "f"
Name 220 "uf"
Name 293 "u"
Name 296 "uui"
Name 314 "uuv4"
Name 321 "msb"
Name 323 "swizzleTemp"
Name 324 "lsb"
Name 325 "swizzleTemp"
Name 326 "ResType"
Name 367 "b"
Name 404 "ub42"
Name 547 "FragColor"
Name 565 "m1"
Name 572 "m2"
Name 588 "uiv4"
Name 590 "ub"
Decorate 11(uv4) Location 1
Decorate 22(ui) Flat
Decorate 22(ui) Location 3
Decorate 220(uf) Location 2
Decorate 296(uui) Flat
Decorate 296(uui) Location 5
Decorate 314(uuv4) Flat
Decorate 314(uuv4) Location 4
Decorate 547(FragColor) Location 0
Decorate 588(uiv4) Flat
Decorate 588(uiv4) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
10: TypePointer Input 7(fvec4)
11(uv4): 10(ptr) Variable Input
18: TypeInt 32 1
19: TypePointer Function 18(int)
21: TypePointer Input 18(int)
22(ui): 21(ptr) Variable Input
141: TypeInt 32 0
142: 141(int) Constant 0
143: TypePointer Function 6(float)
186: TypeBool
187: TypeVector 186(bool) 4
188: TypePointer Private 187(bvec4)
189(ub41): 188(ptr) Variable Private
219: TypePointer Input 6(float)
220(uf): 219(ptr) Variable Input
292: TypePointer Function 141(int)
295: TypePointer Input 141(int)
296(uui): 295(ptr) Variable Input
312: TypeVector 141(int) 4
313: TypePointer Input 312(ivec4)
314(uuv4): 313(ptr) Variable Input
315: TypeVector 141(int) 3
320: TypePointer Function 312(ivec4)
322: TypePointer Function 315(ivec3)
326(ResType): TypeStruct 315(ivec3) 315(ivec3)
333: 141(int) Constant 1
336: 141(int) Constant 2
366: TypePointer Function 186(bool)
404(ub42): 188(ptr) Variable Private
460: 18(int) Constant 2
467: 18(int) Constant 1
497: TypeVector 6(float) 3
516: 6(float) Constant 1073741824
523: 6(float) Constant 1065353216
528: 18(int) Constant 66
534: 18(int) Constant 17
546: TypePointer Output 7(fvec4)
547(FragColor): 546(ptr) Variable Output
563: TypeMatrix 7(fvec4) 4
564: TypePointer Function 563
566: 6(float) Constant 0
567: 7(fvec4) ConstantComposite 523 566 566 566
568: 7(fvec4) ConstantComposite 566 523 566 566
569: 7(fvec4) ConstantComposite 566 566 523 566
570: 7(fvec4) ConstantComposite 566 566 566 523
571: 563 ConstantComposite 567 568 569 570
573: 7(fvec4) ConstantComposite 566 566 566 566
574: 563 ConstantComposite 573 573 573 573
586: TypeVector 18(int) 4
587: TypePointer Input 586(ivec4)
588(uiv4): 587(ptr) Variable Input
589: TypePointer Private 186(bool)
590(ub): 589(ptr) Variable Private
4(main): 2 Function None 3
5: Label
9(v): 8(ptr) Variable Function
20(i): 19(ptr) Variable Function
155(swizzleTemp): 8(ptr) Variable Function
196(f): 143(ptr) Variable Function
293(u): 292(ptr) Variable Function
321(msb): 320(ptr) Variable Function
323(swizzleTemp): 322(ptr) Variable Function
324(lsb): 320(ptr) Variable Function
325(swizzleTemp): 322(ptr) Variable Function
367(b): 366(ptr) Variable Function
549: 8(ptr) Variable Function
565(m1): 564(ptr) Variable Function
572(m2): 564(ptr) Variable Function
576: 564(ptr) Variable Function
12: 7(fvec4) Load 11(uv4)
13: 7(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 12
Store 9(v) 13
14: 7(fvec4) Load 9(v)
15: 7(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 14
16: 7(fvec4) Load 9(v)
17: 7(fvec4) FAdd 16 15
Store 9(v) 17
23: 18(int) Load 22(ui)
24: 18(int) Load 22(ui)
25: 18(int) IMul 23 24
Store 20(i) 25
26: 7(fvec4) Load 9(v)
27: 7(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 26
28: 7(fvec4) Load 9(v)
29: 7(fvec4) FAdd 28 27
Store 9(v) 29
30: 7(fvec4) Load 9(v)
31: 7(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 30
32: 7(fvec4) Load 9(v)
33: 7(fvec4) FAdd 32 31
Store 9(v) 33
34: 7(fvec4) Load 9(v)
35: 7(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 34
36: 7(fvec4) Load 9(v)
37: 7(fvec4) FAdd 36 35
Store 9(v) 37
38: 7(fvec4) Load 9(v)
39: 7(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 38
40: 7(fvec4) Load 9(v)
41: 7(fvec4) FAdd 40 39
Store 9(v) 41
42: 7(fvec4) Load 9(v)
43: 7(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 42
44: 7(fvec4) Load 9(v)
45: 7(fvec4) FAdd 44 43
Store 9(v) 45
46: 7(fvec4) Load 9(v)
47: 7(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 46
48: 7(fvec4) Load 9(v)
49: 7(fvec4) FAdd 48 47
Store 9(v) 49
50: 7(fvec4) Load 9(v)
51: 7(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 50
52: 7(fvec4) Load 9(v)
53: 7(fvec4) FAdd 52 51
Store 9(v) 53
54: 7(fvec4) Load 9(v)
55: 7(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 54
56: 7(fvec4) Load 9(v)
57: 7(fvec4) FAdd 56 55
Store 9(v) 57
58: 7(fvec4) Load 9(v)
59: 7(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 58
60: 7(fvec4) Load 9(v)
61: 7(fvec4) FAdd 60 59
Store 9(v) 61
62: 7(fvec4) Load 9(v)
63: 7(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 62
64: 7(fvec4) Load 9(v)
65: 7(fvec4) FAdd 64 63
Store 9(v) 65
66: 7(fvec4) Load 9(v)
67: 7(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 66
68: 7(fvec4) Load 9(v)
69: 7(fvec4) FAdd 68 67
Store 9(v) 69
70: 7(fvec4) Load 9(v)
71: 7(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 70
72: 7(fvec4) Load 9(v)
73: 7(fvec4) FAdd 72 71
Store 9(v) 73
74: 7(fvec4) Load 9(v)
75: 7(fvec4) Load 9(v)
76: 7(fvec4) ExtInst 1(GLSL.std.450) 26(Pow) 74 75
77: 7(fvec4) Load 9(v)
78: 7(fvec4) FAdd 77 76
Store 9(v) 78
79: 7(fvec4) Load 9(v)
80: 7(fvec4) ExtInst 1(GLSL.std.450) 27(Exp) 79
81: 7(fvec4) Load 9(v)
82: 7(fvec4) FAdd 81 80
Store 9(v) 82
83: 7(fvec4) Load 9(v)
84: 7(fvec4) ExtInst 1(GLSL.std.450) 28(Log) 83
85: 7(fvec4) Load 9(v)
86: 7(fvec4) FAdd 85 84
Store 9(v) 86
87: 7(fvec4) Load 9(v)
88: 7(fvec4) ExtInst 1(GLSL.std.450) 29(Exp2) 87
89: 7(fvec4) Load 9(v)
90: 7(fvec4) FAdd 89 88
Store 9(v) 90
91: 7(fvec4) Load 9(v)
92: 7(fvec4) ExtInst 1(GLSL.std.450) 30(Log2) 91
93: 7(fvec4) Load 9(v)
94: 7(fvec4) FAdd 93 92
Store 9(v) 94
95: 7(fvec4) Load 9(v)
96: 7(fvec4) ExtInst 1(GLSL.std.450) 31(Sqrt) 95
97: 7(fvec4) Load 9(v)
98: 7(fvec4) FAdd 97 96
Store 9(v) 98
99: 7(fvec4) Load 9(v)
100: 7(fvec4) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 99
101: 7(fvec4) Load 9(v)
102: 7(fvec4) FAdd 101 100
Store 9(v) 102
103: 7(fvec4) Load 9(v)
104: 7(fvec4) ExtInst 1(GLSL.std.450) 4(FAbs) 103
105: 7(fvec4) Load 9(v)
106: 7(fvec4) FAdd 105 104
Store 9(v) 106
107: 7(fvec4) Load 9(v)
108: 7(fvec4) ExtInst 1(GLSL.std.450) 6(FSign) 107
109: 7(fvec4) Load 9(v)
110: 7(fvec4) FAdd 109 108
Store 9(v) 110
111: 7(fvec4) Load 9(v)
112: 7(fvec4) ExtInst 1(GLSL.std.450) 8(Floor) 111
113: 7(fvec4) Load 9(v)
114: 7(fvec4) FAdd 113 112
Store 9(v) 114
115: 7(fvec4) Load 9(v)
116: 7(fvec4) ExtInst 1(GLSL.std.450) 3(Trunc) 115
117: 7(fvec4) Load 9(v)
118: 7(fvec4) FAdd 117 116
Store 9(v) 118
119: 7(fvec4) Load 9(v)
120: 7(fvec4) ExtInst 1(GLSL.std.450) 1(Round) 119
121: 7(fvec4) Load 9(v)
122: 7(fvec4) FAdd 121 120
Store 9(v) 122
123: 7(fvec4) Load 9(v)
124: 7(fvec4) ExtInst 1(GLSL.std.450) 2(RoundEven) 123
125: 7(fvec4) Load 9(v)
126: 7(fvec4) FAdd 125 124
Store 9(v) 126
127: 7(fvec4) Load 9(v)
128: 7(fvec4) ExtInst 1(GLSL.std.450) 9(Ceil) 127
129: 7(fvec4) Load 9(v)
130: 7(fvec4) FAdd 129 128
Store 9(v) 130
131: 7(fvec4) Load 9(v)
132: 7(fvec4) ExtInst 1(GLSL.std.450) 10(Fract) 131
133: 7(fvec4) Load 9(v)
134: 7(fvec4) FAdd 133 132
Store 9(v) 134
135: 7(fvec4) Load 9(v)
136: 7(fvec4) Load 9(v)
137: 7(fvec4) FMod 135 136
138: 7(fvec4) Load 9(v)
139: 7(fvec4) FAdd 138 137
Store 9(v) 139
140: 7(fvec4) Load 9(v)
144: 143(ptr) AccessChain 9(v) 142
145: 6(float) Load 144
146: 7(fvec4) CompositeConstruct 145 145 145 145
147: 7(fvec4) FMod 140 146
148: 7(fvec4) Load 9(v)
149: 7(fvec4) FAdd 148 147
Store 9(v) 149
150: 7(fvec4) Load 9(v)
151: 7(fvec4) ExtInst 1(GLSL.std.450) 35(Modf) 150 9(v)
152: 7(fvec4) Load 9(v)
153: 7(fvec4) FAdd 152 151
Store 9(v) 153
154: 7(fvec4) Load 9(v)
156: 7(fvec4) ExtInst 1(GLSL.std.450) 35(Modf) 154 155(swizzleTemp)
157: 7(fvec4) Load 155(swizzleTemp)
158: 7(fvec4) Load 9(v)
159: 7(fvec4) VectorShuffle 158 157 6 4 5 7
Store 9(v) 159
160: 7(fvec4) Load 9(v)
161: 7(fvec4) FAdd 160 156
Store 9(v) 161
162: 7(fvec4) Load 9(v)
163: 7(fvec4) Load 11(uv4)
164: 7(fvec4) ExtInst 1(GLSL.std.450) 37(FMin) 162 163
165: 7(fvec4) Load 9(v)
166: 7(fvec4) FAdd 165 164
Store 9(v) 166
167: 7(fvec4) Load 9(v)
168: 7(fvec4) Load 11(uv4)
169: 7(fvec4) ExtInst 1(GLSL.std.450) 40(FMax) 167 168
170: 7(fvec4) Load 9(v)
171: 7(fvec4) FAdd 170 169
Store 9(v) 171
172: 7(fvec4) Load 9(v)
173: 7(fvec4) Load 11(uv4)
174: 7(fvec4) Load 11(uv4)
175: 7(fvec4) ExtInst 1(GLSL.std.450) 43(FClamp) 172 173 174
176: 7(fvec4) Load 9(v)
177: 7(fvec4) FAdd 176 175
Store 9(v) 177
178: 7(fvec4) Load 9(v)
179: 7(fvec4) Load 9(v)
180: 7(fvec4) Load 9(v)
181: 7(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 178 179 180
182: 7(fvec4) Load 9(v)
183: 7(fvec4) FAdd 182 181
Store 9(v) 183
184: 7(fvec4) Load 9(v)
185: 7(fvec4) Load 9(v)
190: 187(bvec4) Load 189(ub41)
191: 7(fvec4) Select 190 185 184
192: 7(fvec4) Load 9(v)
193: 7(fvec4) FAdd 192 191
Store 9(v) 193
194: 7(fvec4) Load 9(v)
195: 7(fvec4) Load 9(v)
197: 6(float) Load 196(f)
198: 7(fvec4) CompositeConstruct 197 197 197 197
199: 7(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 194 195 198
200: 7(fvec4) Load 9(v)
201: 7(fvec4) FAdd 200 199
Store 9(v) 201
202: 7(fvec4) Load 9(v)
203: 7(fvec4) Load 11(uv4)
204: 7(fvec4) Load 9(v)
205: 7(fvec4) ExtInst 1(GLSL.std.450) 50(Fma) 202 203 204
206: 7(fvec4) Load 9(v)
207: 7(fvec4) FAdd 206 205
Store 9(v) 207
208: 7(fvec4) Load 9(v)
209: 7(fvec4) Load 9(v)
210: 7(fvec4) ExtInst 1(GLSL.std.450) 48(Step) 208 209
211: 7(fvec4) Load 9(v)
212: 7(fvec4) FAdd 211 210
Store 9(v) 212
213: 7(fvec4) Load 9(v)
214: 7(fvec4) Load 9(v)
215: 7(fvec4) Load 9(v)
216: 7(fvec4) ExtInst 1(GLSL.std.450) 49(SmoothStep) 213 214 215
217: 7(fvec4) Load 9(v)
218: 7(fvec4) FAdd 217 216
Store 9(v) 218
221: 6(float) Load 220(uf)
222: 7(fvec4) Load 9(v)
223: 7(fvec4) CompositeConstruct 221 221 221 221
224: 7(fvec4) ExtInst 1(GLSL.std.450) 48(Step) 223 222
225: 7(fvec4) Load 9(v)
226: 7(fvec4) FAdd 225 224
Store 9(v) 226
227: 6(float) Load 220(uf)
228: 6(float) Load 220(uf)
229: 7(fvec4) Load 9(v)
230: 7(fvec4) CompositeConstruct 227 227 227 227
231: 7(fvec4) CompositeConstruct 228 228 228 228
232: 7(fvec4) ExtInst 1(GLSL.std.450) 49(SmoothStep) 230 231 229
233: 7(fvec4) Load 9(v)
234: 7(fvec4) FAdd 233 232
Store 9(v) 234
235: 7(fvec4) Load 9(v)
236: 7(fvec4) ExtInst 1(GLSL.std.450) 69(Normalize) 235
237: 7(fvec4) Load 9(v)
238: 7(fvec4) FAdd 237 236
Store 9(v) 238
239: 7(fvec4) Load 9(v)
240: 7(fvec4) Load 9(v)
241: 7(fvec4) Load 9(v)
242: 7(fvec4) ExtInst 1(GLSL.std.450) 70(FaceForward) 239 240 241
243: 7(fvec4) Load 9(v)
244: 7(fvec4) FAdd 243 242
Store 9(v) 244
245: 7(fvec4) Load 9(v)
246: 7(fvec4) Load 9(v)
247: 7(fvec4) ExtInst 1(GLSL.std.450) 71(Reflect) 245 246
248: 7(fvec4) Load 9(v)
249: 7(fvec4) FAdd 248 247
Store 9(v) 249
250: 7(fvec4) Load 9(v)
251: 7(fvec4) Load 9(v)
252: 6(float) Load 220(uf)
253: 7(fvec4) ExtInst 1(GLSL.std.450) 72(Refract) 250 251 252
254: 7(fvec4) Load 9(v)
255: 7(fvec4) FAdd 254 253
Store 9(v) 255
256: 7(fvec4) Load 9(v)
257: 7(fvec4) DPdx 256
258: 7(fvec4) Load 9(v)
259: 7(fvec4) FAdd 258 257
Store 9(v) 259
260: 7(fvec4) Load 9(v)
261: 7(fvec4) DPdy 260
262: 7(fvec4) Load 9(v)
263: 7(fvec4) FAdd 262 261
Store 9(v) 263
264: 7(fvec4) Load 9(v)
265: 7(fvec4) Fwidth 264
266: 7(fvec4) Load 9(v)
267: 7(fvec4) FAdd 266 265
Store 9(v) 267
268: 18(int) Load 22(ui)
269: 18(int) ExtInst 1(GLSL.std.450) 5(SAbs) 268
270: 18(int) Load 20(i)
271: 18(int) IAdd 270 269
Store 20(i) 271
272: 18(int) Load 20(i)
273: 18(int) ExtInst 1(GLSL.std.450) 7(SSign) 272
274: 18(int) Load 20(i)
275: 18(int) IAdd 274 273
Store 20(i) 275
276: 18(int) Load 20(i)
277: 18(int) Load 22(ui)
278: 18(int) ExtInst 1(GLSL.std.450) 39(SMin) 276 277
279: 18(int) Load 20(i)
280: 18(int) IAdd 279 278
Store 20(i) 280
281: 18(int) Load 20(i)
282: 18(int) Load 22(ui)
283: 18(int) ExtInst 1(GLSL.std.450) 42(SMax) 281 282
284: 18(int) Load 20(i)
285: 18(int) IAdd 284 283
Store 20(i) 285
286: 18(int) Load 20(i)
287: 18(int) Load 22(ui)
288: 18(int) Load 22(ui)
289: 18(int) ExtInst 1(GLSL.std.450) 45(SClamp) 286 287 288
290: 18(int) Load 20(i)
291: 18(int) IAdd 290 289
Store 20(i) 291
294: 141(int) Load 293(u)
297: 141(int) Load 296(uui)
298: 141(int) ExtInst 1(GLSL.std.450) 38(UMin) 294 297
299: 141(int) Load 293(u)
300: 141(int) IAdd 299 298
Store 293(u) 300
301: 141(int) Load 293(u)
302: 141(int) Load 296(uui)
303: 141(int) ExtInst 1(GLSL.std.450) 41(UMax) 301 302
304: 141(int) Load 293(u)
305: 141(int) IAdd 304 303
Store 293(u) 305
306: 141(int) Load 293(u)
307: 141(int) Load 296(uui)
308: 141(int) Load 296(uui)
309: 141(int) ExtInst 1(GLSL.std.450) 44(UClamp) 306 307 308
310: 141(int) Load 293(u)
311: 141(int) IAdd 310 309
Store 293(u) 311
316: 312(ivec4) Load 314(uuv4)
317: 315(ivec3) VectorShuffle 316 316 0 1 2
318: 312(ivec4) Load 314(uuv4)
319: 315(ivec3) VectorShuffle 318 318 0 1 2
327:326(ResType) UMulExtended 317 319
328: 315(ivec3) CompositeExtract 327 0
Store 325(swizzleTemp) 328
329: 315(ivec3) CompositeExtract 327 1
Store 323(swizzleTemp) 329
330: 315(ivec3) Load 323(swizzleTemp)
331: 292(ptr) AccessChain 321(msb) 142
332: 141(int) CompositeExtract 330 0
Store 331 332
334: 292(ptr) AccessChain 321(msb) 333
335: 141(int) CompositeExtract 330 1
Store 334 335
337: 292(ptr) AccessChain 321(msb) 336
338: 141(int) CompositeExtract 330 2
Store 337 338
339: 315(ivec3) Load 325(swizzleTemp)
340: 292(ptr) AccessChain 324(lsb) 142
341: 141(int) CompositeExtract 339 0
Store 340 341
342: 292(ptr) AccessChain 324(lsb) 333
343: 141(int) CompositeExtract 339 1
Store 342 343
344: 292(ptr) AccessChain 324(lsb) 336
345: 141(int) CompositeExtract 339 2
Store 344 345
346: 292(ptr) AccessChain 321(msb) 142
347: 141(int) Load 346
348: 292(ptr) AccessChain 321(msb) 333
349: 141(int) Load 348
350: 141(int) IAdd 347 349
351: 292(ptr) AccessChain 321(msb) 336
352: 141(int) Load 351
353: 141(int) IAdd 350 352
354: 141(int) Load 293(u)
355: 141(int) IAdd 354 353
Store 293(u) 355
356: 292(ptr) AccessChain 324(lsb) 142
357: 141(int) Load 356
358: 292(ptr) AccessChain 324(lsb) 333
359: 141(int) Load 358
360: 141(int) IAdd 357 359
361: 292(ptr) AccessChain 324(lsb) 336
362: 141(int) Load 361
363: 141(int) IAdd 360 362
364: 141(int) Load 293(u)
365: 141(int) IAdd 364 363
Store 293(u) 365
368: 6(float) Load 220(uf)
369: 186(bool) IsNan 368
Store 367(b) 369
370: 6(float) Load 196(f)
371: 186(bool) IsInf 370
Store 367(b) 371
372: 7(fvec4) Load 9(v)
373: 7(fvec4) Load 11(uv4)
374: 187(bvec4) FOrdLessThan 372 373
375: 186(bool) Any 374
Store 367(b) 375
376: 186(bool) Load 367(b)
SelectionMerge 378 None
BranchConditional 376 377 378
377: Label
379: 7(fvec4) Load 9(v)
380: 7(fvec4) Load 11(uv4)
381: 187(bvec4) FOrdLessThanEqual 379 380
382: 186(bool) Any 381
Branch 378
378: Label
383: 186(bool) Phi 376 5 382 377
Store 367(b) 383
384: 186(bool) Load 367(b)
SelectionMerge 386 None
BranchConditional 384 385 386
385: Label
387: 7(fvec4) Load 9(v)
388: 7(fvec4) Load 11(uv4)
389: 187(bvec4) FOrdGreaterThan 387 388
390: 186(bool) Any 389
Branch 386
386: Label
391: 186(bool) Phi 384 378 390 385
Store 367(b) 391
392: 186(bool) Load 367(b)
SelectionMerge 394 None
BranchConditional 392 393 394
393: Label
395: 7(fvec4) Load 9(v)
396: 7(fvec4) Load 11(uv4)
397: 187(bvec4) FOrdGreaterThanEqual 395 396
398: 186(bool) Any 397
Branch 394
394: Label
399: 186(bool) Phi 392 386 398 393
Store 367(b) 399
400: 186(bool) Load 367(b)
SelectionMerge 402 None
BranchConditional 400 401 402
401: Label
403: 187(bvec4) Load 189(ub41)
405: 187(bvec4) Load 404(ub42)
406: 187(bvec4) LogicalEqual 403 405
407: 186(bool) Any 406
Branch 402
402: Label
408: 186(bool) Phi 400 394 407 401
Store 367(b) 408
409: 186(bool) Load 367(b)
SelectionMerge 411 None
BranchConditional 409 410 411
410: Label
412: 187(bvec4) Load 189(ub41)
413: 187(bvec4) Load 404(ub42)
414: 187(bvec4) LogicalNotEqual 412 413
415: 186(bool) Any 414
Branch 411
411: Label
416: 186(bool) Phi 409 402 415 410
Store 367(b) 416
417: 186(bool) Load 367(b)
418: 187(bvec4) Load 189(ub41)
419: 186(bool) Any 418
420: 186(bool) LogicalAnd 417 419
Store 367(b) 420
421: 186(bool) Load 367(b)
422: 187(bvec4) Load 189(ub41)
423: 186(bool) All 422
424: 186(bool) LogicalAnd 421 423
Store 367(b) 424
425: 186(bool) Load 367(b)
SelectionMerge 427 None
BranchConditional 425 426 427
426: Label
428: 187(bvec4) Load 189(ub41)
429: 187(bvec4) LogicalNot 428
430: 186(bool) Any 429
Branch 427
427: Label
431: 186(bool) Phi 425 411 430 426
Store 367(b) 431
432: 18(int) Load 20(i)
433: 18(int) Load 22(ui)
434: 18(int) IAdd 432 433
435: 18(int) Load 20(i)
436: 18(int) IMul 434 435
437: 18(int) Load 22(ui)
438: 18(int) ISub 436 437
439: 18(int) Load 20(i)
440: 18(int) SDiv 438 439
Store 20(i) 440
441: 18(int) Load 20(i)
442: 18(int) Load 22(ui)
443: 18(int) SMod 441 442
Store 20(i) 443
444: 18(int) Load 20(i)
445: 18(int) Load 22(ui)
446: 186(bool) IEqual 444 445
447: 186(bool) LogicalNot 446
SelectionMerge 449 None
BranchConditional 447 448 449
448: Label
450: 18(int) Load 20(i)
451: 18(int) Load 22(ui)
452: 186(bool) INotEqual 450 451
SelectionMerge 454 None
BranchConditional 452 453 454
453: Label
455: 18(int) Load 20(i)
456: 18(int) Load 22(ui)
457: 186(bool) IEqual 455 456
Branch 454
454: Label
458: 186(bool) Phi 452 448 457 453
459: 18(int) Load 20(i)
461: 186(bool) INotEqual 459 460
462: 186(bool) LogicalNotEqual 458 461
Branch 449
449: Label
463: 186(bool) Phi 446 427 462 454
SelectionMerge 465 None
BranchConditional 463 464 465
464: Label
466: 18(int) Load 20(i)
468: 18(int) IAdd 466 467
Store 20(i) 468
Branch 465
465: Label
469: 6(float) Load 220(uf)
470: 6(float) Load 220(uf)
471: 6(float) FAdd 469 470
472: 6(float) Load 220(uf)
473: 6(float) FMul 471 472
474: 6(float) Load 220(uf)
475: 6(float) FSub 473 474
476: 6(float) Load 220(uf)
477: 6(float) FDiv 475 476
Store 196(f) 477
478: 7(fvec4) Load 9(v)
479: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 478
480: 6(float) Load 196(f)
481: 6(float) FAdd 480 479
Store 196(f) 481
482: 7(fvec4) Load 9(v)
483: 7(fvec4) Load 9(v)
484: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 482 483
485: 6(float) Load 196(f)
486: 6(float) FAdd 485 484
Store 196(f) 486
487: 7(fvec4) Load 9(v)
488: 7(fvec4) Load 9(v)
489: 6(float) Dot 487 488
490: 6(float) Load 196(f)
491: 6(float) FAdd 490 489
Store 196(f) 491
492: 6(float) Load 196(f)
493: 6(float) Load 220(uf)
494: 6(float) FMul 492 493
495: 6(float) Load 196(f)
496: 6(float) FAdd 495 494
Store 196(f) 496
498: 7(fvec4) Load 9(v)
499: 497(fvec3) VectorShuffle 498 498 0 1 2
500: 7(fvec4) Load 9(v)
501: 497(fvec3) VectorShuffle 500 500 0 1 2
502: 497(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 499 501
503: 6(float) CompositeExtract 502 0
504: 6(float) Load 196(f)
505: 6(float) FAdd 504 503
Store 196(f) 505
506: 6(float) Load 196(f)
507: 6(float) Load 220(uf)
508: 186(bool) FOrdEqual 506 507
509: 186(bool) LogicalNot 508
SelectionMerge 511 None
BranchConditional 509 510 511
510: Label
512: 6(float) Load 196(f)
513: 6(float) Load 220(uf)
514: 186(bool) FUnordNotEqual 512 513
515: 6(float) Load 196(f)
517: 186(bool) FUnordNotEqual 515 516
518: 186(bool) LogicalAnd 514 517
Branch 511
511: Label
519: 186(bool) Phi 508 465 518 510
SelectionMerge 521 None
BranchConditional 519 520 521
520: Label
522: 6(float) Load 196(f)
524: 6(float) FAdd 522 523
Store 196(f) 524
Branch 521
521: Label
525: 18(int) Load 22(ui)
526: 18(int) Load 20(i)
527: 18(int) BitwiseAnd 526 525
Store 20(i) 527
529: 18(int) Load 20(i)
530: 18(int) BitwiseOr 529 528
Store 20(i) 530
531: 18(int) Load 22(ui)
532: 18(int) Load 20(i)
533: 18(int) BitwiseXor 532 531
Store 20(i) 533
535: 18(int) Load 20(i)
536: 18(int) SMod 535 534
Store 20(i) 536
537: 18(int) Load 20(i)
538: 18(int) ShiftRightArithmetic 537 460
Store 20(i) 538
539: 18(int) Load 22(ui)
540: 18(int) Load 20(i)
541: 18(int) ShiftLeftLogical 540 539
Store 20(i) 541
542: 18(int) Load 20(i)
543: 18(int) Not 542
Store 20(i) 543
544: 186(bool) Load 367(b)
545: 186(bool) LogicalNot 544
Store 367(b) 545
548: 186(bool) Load 367(b)
SelectionMerge 551 None
BranchConditional 548 550 560
550: Label
552: 18(int) Load 20(i)
553: 6(float) ConvertSToF 552
554: 7(fvec4) CompositeConstruct 553 553 553 553
555: 6(float) Load 196(f)
556: 7(fvec4) CompositeConstruct 555 555 555 555
557: 7(fvec4) FAdd 554 556
558: 7(fvec4) Load 9(v)
559: 7(fvec4) FAdd 557 558
Store 549 559
Branch 551
560: Label
561: 7(fvec4) Load 9(v)
Store 549 561
Branch 551
551: Label
562: 7(fvec4) Load 549
Store 547(FragColor) 562
Store 565(m1) 571
Store 572(m2) 574
575: 186(bool) Load 367(b)
SelectionMerge 578 None
BranchConditional 575 577 580
577: Label
579: 563 Load 565(m1)
Store 576 579
Branch 578
580: Label
581: 563 Load 572(m2)
Store 576 581
Branch 578
578: Label
582: 8(ptr) AccessChain 576 467
583: 7(fvec4) Load 582
584: 7(fvec4) Load 547(FragColor)
585: 7(fvec4) FAdd 584 583
Store 547(FragColor) 585
Return
FunctionEnd