blob: 97ffce98035d5776a26249b4a554fb7ce9fed682 [file] [log] [blame]
spv.Operations.frag
Linked fragment stage:
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 418
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginLowerLeft
Source GLSL 130
Name 4 "main"
Name 9 "v"
Name 11 "uv4"
Name 20 "i"
Name 22 "ui"
Name 172 "uf"
Name 219 "b"
Name 253 "ub41"
Name 255 "ub42"
Name 318 "f"
Name 397 "gl_FragColor"
Name 415 "uiv4"
Name 417 "ub"
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypePointer Function 7(fvec4)
10: TypePointer UniformConstant 7(fvec4)
11(uv4): 10(ptr) Variable UniformConstant
18: TypeInt 32 1
19: TypePointer Function 18(int)
21: TypePointer UniformConstant 18(int)
22(ui): 21(ptr) Variable UniformConstant
129: TypeInt 32 0
130: 129(int) Constant 0
131: TypePointer Function 6(float)
171: TypePointer UniformConstant 6(float)
172(uf): 171(ptr) Variable UniformConstant
217: TypeBool
218: TypePointer Function 217(bool)
222: TypeVector 217(bool) 4
252: TypePointer UniformConstant 222(bvec4)
253(ub41): 252(ptr) Variable UniformConstant
255(ub42): 252(ptr) Variable UniformConstant
309: 18(int) Constant 2
316: 18(int) Constant 1
347: TypeVector 6(float) 3
366: 6(float) Constant 1073741824
373: 6(float) Constant 1065353216
378: 18(int) Constant 66
384: 18(int) Constant 17
396: TypePointer Output 7(fvec4)
397(gl_FragColor): 396(ptr) Variable Output
413: TypeVector 18(int) 4
414: TypePointer UniformConstant 413(ivec4)
415(uiv4): 414(ptr) Variable UniformConstant
416: TypePointer UniformConstant 217(bool)
417(ub): 416(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
9(v): 8(ptr) Variable Function
20(i): 19(ptr) Variable Function
219(b): 218(ptr) Variable Function
318(f): 131(ptr) Variable Function
398: 8(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) 9(Ceil) 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) 10(Fract) 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) Load 9(v)
125: 7(fvec4) FMod 123 124
126: 7(fvec4) Load 9(v)
127: 7(fvec4) FAdd 126 125
Store 9(v) 127
128: 7(fvec4) Load 9(v)
132: 131(ptr) AccessChain 9(v) 130
133: 6(float) Load 132
134: 7(fvec4) CompositeConstruct 133 133 133 133
135: 7(fvec4) FMod 128 134
136: 7(fvec4) Load 9(v)
137: 7(fvec4) FAdd 136 135
Store 9(v) 137
138: 7(fvec4) Load 9(v)
139: 7(fvec4) Load 11(uv4)
140: 7(fvec4) ExtInst 1(GLSL.std.450) 37(FMin) 138 139
141: 7(fvec4) Load 9(v)
142: 7(fvec4) FAdd 141 140
Store 9(v) 142
143: 7(fvec4) Load 9(v)
144: 7(fvec4) Load 11(uv4)
145: 7(fvec4) ExtInst 1(GLSL.std.450) 40(FMax) 143 144
146: 7(fvec4) Load 9(v)
147: 7(fvec4) FAdd 146 145
Store 9(v) 147
148: 7(fvec4) Load 9(v)
149: 7(fvec4) Load 11(uv4)
150: 7(fvec4) Load 11(uv4)
151: 7(fvec4) ExtInst 1(GLSL.std.450) 43(FClamp) 148 149 150
152: 7(fvec4) Load 9(v)
153: 7(fvec4) FAdd 152 151
Store 9(v) 153
154: 7(fvec4) Load 9(v)
155: 7(fvec4) Load 9(v)
156: 7(fvec4) Load 9(v)
157: 7(fvec4) ExtInst 1(GLSL.std.450) 46(FMix) 154 155 156
158: 7(fvec4) Load 9(v)
159: 7(fvec4) FAdd 158 157
Store 9(v) 159
160: 7(fvec4) Load 9(v)
161: 7(fvec4) Load 9(v)
162: 7(fvec4) ExtInst 1(GLSL.std.450) 48(Step) 160 161
163: 7(fvec4) Load 9(v)
164: 7(fvec4) FAdd 163 162
Store 9(v) 164
165: 7(fvec4) Load 9(v)
166: 7(fvec4) Load 9(v)
167: 7(fvec4) Load 9(v)
168: 7(fvec4) ExtInst 1(GLSL.std.450) 49(SmoothStep) 165 166 167
169: 7(fvec4) Load 9(v)
170: 7(fvec4) FAdd 169 168
Store 9(v) 170
173: 6(float) Load 172(uf)
174: 7(fvec4) Load 9(v)
175: 7(fvec4) ExtInst 1(GLSL.std.450) 48(Step) 173 174
176: 7(fvec4) Load 9(v)
177: 7(fvec4) FAdd 176 175
Store 9(v) 177
178: 6(float) Load 172(uf)
179: 6(float) Load 172(uf)
180: 7(fvec4) Load 9(v)
181: 7(fvec4) ExtInst 1(GLSL.std.450) 49(SmoothStep) 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) ExtInst 1(GLSL.std.450) 69(Normalize) 184
186: 7(fvec4) Load 9(v)
187: 7(fvec4) FAdd 186 185
Store 9(v) 187
188: 7(fvec4) Load 9(v)
189: 7(fvec4) Load 9(v)
190: 7(fvec4) Load 9(v)
191: 7(fvec4) ExtInst 1(GLSL.std.450) 70(FaceForward) 188 189 190
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)
196: 7(fvec4) ExtInst 1(GLSL.std.450) 71(Reflect) 194 195
197: 7(fvec4) Load 9(v)
198: 7(fvec4) FAdd 197 196
Store 9(v) 198
199: 7(fvec4) Load 9(v)
200: 7(fvec4) Load 9(v)
201: 6(float) Load 172(uf)
202: 7(fvec4) ExtInst 1(GLSL.std.450) 72(Refract) 199 200 201
203: 7(fvec4) Load 9(v)
204: 7(fvec4) FAdd 203 202
Store 9(v) 204
205: 7(fvec4) Load 9(v)
206: 7(fvec4) DPdx 205
207: 7(fvec4) Load 9(v)
208: 7(fvec4) FAdd 207 206
Store 9(v) 208
209: 7(fvec4) Load 9(v)
210: 7(fvec4) DPdy 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) Fwidth 213
215: 7(fvec4) Load 9(v)
216: 7(fvec4) FAdd 215 214
Store 9(v) 216
220: 7(fvec4) Load 9(v)
221: 7(fvec4) Load 11(uv4)
223: 222(bvec4) FOrdLessThan 220 221
224: 217(bool) Any 223
Store 219(b) 224
225: 217(bool) Load 219(b)
SelectionMerge 227 None
BranchConditional 225 226 227
226: Label
228: 7(fvec4) Load 9(v)
229: 7(fvec4) Load 11(uv4)
230: 222(bvec4) FOrdLessThanEqual 228 229
231: 217(bool) Any 230
Branch 227
227: Label
232: 217(bool) Phi 225 5 231 226
Store 219(b) 232
233: 217(bool) Load 219(b)
SelectionMerge 235 None
BranchConditional 233 234 235
234: Label
236: 7(fvec4) Load 9(v)
237: 7(fvec4) Load 11(uv4)
238: 222(bvec4) FOrdGreaterThan 236 237
239: 217(bool) Any 238
Branch 235
235: Label
240: 217(bool) Phi 233 227 239 234
Store 219(b) 240
241: 217(bool) Load 219(b)
SelectionMerge 243 None
BranchConditional 241 242 243
242: Label
244: 7(fvec4) Load 9(v)
245: 7(fvec4) Load 11(uv4)
246: 222(bvec4) FOrdGreaterThanEqual 244 245
247: 217(bool) Any 246
Branch 243
243: Label
248: 217(bool) Phi 241 235 247 242
Store 219(b) 248
249: 217(bool) Load 219(b)
SelectionMerge 251 None
BranchConditional 249 250 251
250: Label
254: 222(bvec4) Load 253(ub41)
256: 222(bvec4) Load 255(ub42)
257: 222(bvec4) IEqual 254 256
258: 217(bool) Any 257
Branch 251
251: Label
259: 217(bool) Phi 249 243 258 250
Store 219(b) 259
260: 217(bool) Load 219(b)
SelectionMerge 262 None
BranchConditional 260 261 262
261: Label
263: 222(bvec4) Load 253(ub41)
264: 222(bvec4) Load 255(ub42)
265: 222(bvec4) INotEqual 263 264
266: 217(bool) Any 265
Branch 262
262: Label
267: 217(bool) Phi 260 251 266 261
Store 219(b) 267
268: 217(bool) Load 219(b)
269: 222(bvec4) Load 253(ub41)
270: 217(bool) Any 269
271: 217(bool) LogicalAnd 268 270
Store 219(b) 271
272: 217(bool) Load 219(b)
273: 222(bvec4) Load 253(ub41)
274: 217(bool) All 273
275: 217(bool) LogicalAnd 272 274
Store 219(b) 275
276: 217(bool) Load 219(b)
SelectionMerge 278 None
BranchConditional 276 277 278
277: Label
279: 222(bvec4) Load 253(ub41)
280: 222(bvec4) LogicalNot 279
281: 217(bool) Any 280
Branch 278
278: Label
282: 217(bool) Phi 276 262 281 277
Store 219(b) 282
283: 18(int) Load 20(i)
284: 18(int) Load 22(ui)
285: 18(int) IAdd 283 284
286: 18(int) Load 20(i)
287: 18(int) IMul 285 286
288: 18(int) Load 22(ui)
289: 18(int) ISub 287 288
290: 18(int) Load 20(i)
291: 18(int) SDiv 289 290
Store 20(i) 291
292: 18(int) Load 20(i)
293: 18(int) Load 22(ui)
294: 18(int) SMod 292 293
Store 20(i) 294
295: 18(int) Load 20(i)
296: 18(int) Load 22(ui)
297: 217(bool) IEqual 295 296
298: 217(bool) LogicalNot 297
SelectionMerge 300 None
BranchConditional 298 299 300
299: Label
301: 18(int) Load 20(i)
302: 18(int) Load 22(ui)
303: 217(bool) INotEqual 301 302
304: 18(int) Load 20(i)
305: 18(int) Load 22(ui)
306: 217(bool) IEqual 304 305
307: 217(bool) LogicalAnd 303 306
308: 18(int) Load 20(i)
310: 217(bool) INotEqual 308 309
311: 217(bool) LogicalNotEqual 307 310
Branch 300
300: Label
312: 217(bool) Phi 297 278 311 299
SelectionMerge 314 None
BranchConditional 312 313 314
313: Label
315: 18(int) Load 20(i)
317: 18(int) IAdd 315 316
Store 20(i) 317
Branch 314
314: Label
319: 6(float) Load 172(uf)
320: 6(float) Load 172(uf)
321: 6(float) FAdd 319 320
322: 6(float) Load 172(uf)
323: 6(float) FMul 321 322
324: 6(float) Load 172(uf)
325: 6(float) FSub 323 324
326: 6(float) Load 172(uf)
327: 6(float) FDiv 325 326
Store 318(f) 327
328: 7(fvec4) Load 9(v)
329: 6(float) ExtInst 1(GLSL.std.450) 66(Length) 328
330: 6(float) Load 318(f)
331: 6(float) FAdd 330 329
Store 318(f) 331
332: 7(fvec4) Load 9(v)
333: 7(fvec4) Load 9(v)
334: 6(float) ExtInst 1(GLSL.std.450) 67(Distance) 332 333
335: 6(float) Load 318(f)
336: 6(float) FAdd 335 334
Store 318(f) 336
337: 7(fvec4) Load 9(v)
338: 7(fvec4) Load 9(v)
339: 6(float) Dot 337 338
340: 6(float) Load 318(f)
341: 6(float) FAdd 340 339
Store 318(f) 341
342: 6(float) Load 318(f)
343: 6(float) Load 172(uf)
344: 6(float) FMul 342 343
345: 6(float) Load 318(f)
346: 6(float) FAdd 345 344
Store 318(f) 346
348: 7(fvec4) Load 9(v)
349: 347(fvec3) VectorShuffle 348 348 0 1 2
350: 7(fvec4) Load 9(v)
351: 347(fvec3) VectorShuffle 350 350 0 1 2
352: 347(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 349 351
353: 6(float) CompositeExtract 352 0
354: 6(float) Load 318(f)
355: 6(float) FAdd 354 353
Store 318(f) 355
356: 6(float) Load 318(f)
357: 6(float) Load 172(uf)
358: 217(bool) FOrdEqual 356 357
359: 217(bool) LogicalNot 358
SelectionMerge 361 None
BranchConditional 359 360 361
360: Label
362: 6(float) Load 318(f)
363: 6(float) Load 172(uf)
364: 217(bool) FOrdNotEqual 362 363
365: 6(float) Load 318(f)
367: 217(bool) FOrdNotEqual 365 366
368: 217(bool) LogicalAnd 364 367
Branch 361
361: Label
369: 217(bool) Phi 358 314 368 360
SelectionMerge 371 None
BranchConditional 369 370 371
370: Label
372: 6(float) Load 318(f)
374: 6(float) FAdd 372 373
Store 318(f) 374
Branch 371
371: Label
375: 18(int) Load 22(ui)
376: 18(int) Load 20(i)
377: 18(int) BitwiseAnd 376 375
Store 20(i) 377
379: 18(int) Load 20(i)
380: 18(int) BitwiseOr 379 378
Store 20(i) 380
381: 18(int) Load 22(ui)
382: 18(int) Load 20(i)
383: 18(int) BitwiseXor 382 381
Store 20(i) 383
385: 18(int) Load 20(i)
386: 18(int) SMod 385 384
Store 20(i) 386
387: 18(int) Load 20(i)
388: 18(int) ShiftRightArithmetic 387 309
Store 20(i) 388
389: 18(int) Load 22(ui)
390: 18(int) Load 20(i)
391: 18(int) ShiftLeftLogical 390 389
Store 20(i) 391
392: 18(int) Load 20(i)
393: 18(int) Not 392
Store 20(i) 393
394: 217(bool) Load 219(b)
395: 217(bool) LogicalNot 394
Store 219(b) 395
399: 217(bool) Load 219(b)
SelectionMerge 401 None
BranchConditional 399 400 410
400: Label
402: 18(int) Load 20(i)
403: 6(float) ConvertSToF 402
404: 7(fvec4) CompositeConstruct 403 403 403 403
405: 6(float) Load 318(f)
406: 7(fvec4) CompositeConstruct 405 405 405 405
407: 7(fvec4) FAdd 404 406
408: 7(fvec4) Load 9(v)
409: 7(fvec4) FAdd 407 408
Store 398 409
Branch 401
410: Label
411: 7(fvec4) Load 9(v)
Store 398 411
Branch 401
401: Label
412: 7(fvec4) Load 398
Store 397(gl_FragColor) 412
Return
FunctionEnd