3 gl_FragCoord origin is upper left
5 0:2 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
6 0:2 Function Parameters:
7 0:2 'input' ( in 4-component vector of float)
10 0:3 Loop with condition tested first
14 0:4 Pre-Increment ( temp 4-component vector of float)
15 0:4 'input' ( in 4-component vector of float)
16 0:4 Loop with condition tested first
20 0:5 Loop with condition tested first
23 0:5 NotEqual ( temp 4-component vector of bool)
24 0:5 'input' ( in 4-component vector of float)
25 0:5 'input' ( in 4-component vector of float)
28 0:6 Loop with condition tested first
31 0:6 NotEqual ( temp 4-component vector of bool)
32 0:6 'input' ( in 4-component vector of float)
33 0:6 'input' ( in 4-component vector of float)
36 0:6 Branch: Return with expression
37 0:6 Negate value ( temp 4-component vector of float)
38 0:6 'input' ( in 4-component vector of float)
40 0:7 Pre-Decrement ( temp 4-component vector of float)
41 0:7 'input' ( in 4-component vector of float)
42 0:7 Loop with condition tested first
45 0:7 NotEqual ( temp 4-component vector of bool)
46 0:7 'input' ( in 4-component vector of float)
47 0:7 'input' ( in 4-component vector of float)
50 0:7 Branch: Return with expression
51 0:7 Negate value ( temp 4-component vector of float)
52 0:7 'input' ( in 4-component vector of float)
53 0:7 Loop Terminal Expression
54 0:7 add second child into first child ( temp 4-component vector of float)
55 0:7 'input' ( in 4-component vector of float)
59 0:8 Loop with condition tested first
62 0:8 Test condition and select ( temp void)
64 0:8 Compare Greater Than ( temp bool)
65 0:8 direct index ( temp float)
66 0:8 'input' ( in 4-component vector of float)
74 0:9 Loop with condition tested first
77 0:9 Test condition and select ( temp void)
79 0:9 Compare Greater Than ( temp bool)
80 0:9 direct index ( temp float)
81 0:9 'input' ( in 4-component vector of float)
89 0:11 move second child to first child ( temp int)
93 0:11 Loop with condition tested first
95 0:11 Compare Less Than ( temp bool)
100 0:11 Test condition and select ( temp void)
102 0:11 Compare Equal ( temp bool)
103 0:11 'ii' ( temp int)
107 0:11 Branch: Continue
108 0:11 Loop Terminal Expression
109 0:11 Pre-Increment ( temp int)
110 0:11 'ii' ( temp int)
111 0:12 Pre-Decrement ( temp float)
112 0:12 'ii' ( temp float)
113 0:2 Function Definition: PixelShaderFunction( ( temp void)
114 0:2 Function Parameters:
116 0:2 move second child to first child ( temp 4-component vector of float)
117 0:? 'input' ( temp 4-component vector of float)
118 0:? 'input' (layout( location=0) in 4-component vector of float)
119 0:2 move second child to first child ( temp 4-component vector of float)
120 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
121 0:2 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
122 0:? 'input' ( temp 4-component vector of float)
124 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
125 0:? 'input' (layout( location=0) in 4-component vector of float)
128 Linked fragment stage:
132 gl_FragCoord origin is upper left
134 0:2 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
135 0:2 Function Parameters:
136 0:2 'input' ( in 4-component vector of float)
139 0:3 Loop with condition tested first
140 0:3 No loop condition
143 0:4 Pre-Increment ( temp 4-component vector of float)
144 0:4 'input' ( in 4-component vector of float)
145 0:4 Loop with condition tested first
146 0:4 No loop condition
149 0:5 Loop with condition tested first
152 0:5 NotEqual ( temp 4-component vector of bool)
153 0:5 'input' ( in 4-component vector of float)
154 0:5 'input' ( in 4-component vector of float)
157 0:6 Loop with condition tested first
160 0:6 NotEqual ( temp 4-component vector of bool)
161 0:6 'input' ( in 4-component vector of float)
162 0:6 'input' ( in 4-component vector of float)
165 0:6 Branch: Return with expression
166 0:6 Negate value ( temp 4-component vector of float)
167 0:6 'input' ( in 4-component vector of float)
169 0:7 Pre-Decrement ( temp 4-component vector of float)
170 0:7 'input' ( in 4-component vector of float)
171 0:7 Loop with condition tested first
174 0:7 NotEqual ( temp 4-component vector of bool)
175 0:7 'input' ( in 4-component vector of float)
176 0:7 'input' ( in 4-component vector of float)
179 0:7 Branch: Return with expression
180 0:7 Negate value ( temp 4-component vector of float)
181 0:7 'input' ( in 4-component vector of float)
182 0:7 Loop Terminal Expression
183 0:7 add second child into first child ( temp 4-component vector of float)
184 0:7 'input' ( in 4-component vector of float)
188 0:8 Loop with condition tested first
189 0:8 No loop condition
191 0:8 Test condition and select ( temp void)
193 0:8 Compare Greater Than ( temp bool)
194 0:8 direct index ( temp float)
195 0:8 'input' ( in 4-component vector of float)
203 0:9 Loop with condition tested first
204 0:9 No loop condition
206 0:9 Test condition and select ( temp void)
208 0:9 Compare Greater Than ( temp bool)
209 0:9 direct index ( temp float)
210 0:9 'input' ( in 4-component vector of float)
218 0:11 move second child to first child ( temp int)
219 0:11 'ii' ( temp int)
222 0:11 Loop with condition tested first
224 0:11 Compare Less Than ( temp bool)
225 0:11 'ii' ( temp int)
229 0:11 Test condition and select ( temp void)
231 0:11 Compare Equal ( temp bool)
232 0:11 'ii' ( temp int)
236 0:11 Branch: Continue
237 0:11 Loop Terminal Expression
238 0:11 Pre-Increment ( temp int)
239 0:11 'ii' ( temp int)
240 0:12 Pre-Decrement ( temp float)
241 0:12 'ii' ( temp float)
242 0:2 Function Definition: PixelShaderFunction( ( temp void)
243 0:2 Function Parameters:
245 0:2 move second child to first child ( temp 4-component vector of float)
246 0:? 'input' ( temp 4-component vector of float)
247 0:? 'input' (layout( location=0) in 4-component vector of float)
248 0:2 move second child to first child ( temp 4-component vector of float)
249 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
250 0:2 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
251 0:? 'input' ( temp 4-component vector of float)
253 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
254 0:? 'input' (layout( location=0) in 4-component vector of float)
256 // Module Version 10000
257 // Generated by (magic number): 80001
258 // Id's are bound by 124
261 1: ExtInstImport "GLSL.std.450"
262 MemoryModel Logical GLSL450
263 EntryPoint Fragment 4 "PixelShaderFunction" 117 120
264 ExecutionMode 4 OriginUpperLeft
265 Name 4 "PixelShaderFunction"
266 Name 11 "@PixelShaderFunction(vf4;"
272 Name 120 "@entryPointOutput"
274 Decorate 117(input) Location 0
275 Decorate 120(@entryPointOutput) Location 0
279 7: TypeVector 6(float) 4
280 8: TypePointer Function 7(fvec4)
281 9: TypeFunction 7(fvec4) 8(ptr)
282 18: 6(float) Constant 1065353216
284 33: TypeVector 32(bool) 4
285 63: 6(float) Constant 1073741824
287 72: 71(int) Constant 0
288 73: TypePointer Function 6(float)
290 91: TypePointer Function 90(int)
291 93: 90(int) Constant 4294967295
292 100: 90(int) Constant 3
293 103: 90(int) Constant 2
294 109: 90(int) Constant 1
295 116: TypePointer Input 7(fvec4)
296 117(input): 116(ptr) Variable Input
297 119: TypePointer Output 7(fvec4)
298 120(@entryPointOutput): 119(ptr) Variable Output
299 4(PixelShaderFunction): 2 Function None 3
301 115(input): 8(ptr) Variable Function
302 121(param): 8(ptr) Variable Function
303 118: 7(fvec4) Load 117(input)
305 122: 7(fvec4) Load 115(input)
307 123: 7(fvec4) FunctionCall 11(@PixelShaderFunction(vf4;) 121(param)
308 Store 120(@entryPointOutput) 123
311 11(@PixelShaderFunction(vf4;): 7(fvec4) Function None 9
312 10(input): 8(ptr) FunctionParameter
314 92(ii): 91(ptr) Variable Function
315 111(ii): 73(ptr) Variable Function
325 17: 7(fvec4) Load 10(input)
326 19: 7(fvec4) CompositeConstruct 18 18 18 18
327 20: 7(fvec4) FAdd 17 19
343 30: 7(fvec4) Load 10(input)
344 31: 7(fvec4) Load 10(input)
345 34: 33(bvec4) FOrdNotEqual 30 31
347 BranchConditional 35 26 27
358 41: 7(fvec4) Load 10(input)
359 42: 7(fvec4) Load 10(input)
360 43: 33(bvec4) FOrdNotEqual 41 42
362 BranchConditional 44 37 38
364 45: 7(fvec4) Load 10(input)
365 46: 7(fvec4) FNegate 45
370 48: 7(fvec4) Load 10(input)
371 49: 7(fvec4) CompositeConstruct 18 18 18 18
372 50: 7(fvec4) FSub 48 49
379 56: 7(fvec4) Load 10(input)
380 57: 7(fvec4) Load 10(input)
381 58: 33(bvec4) FOrdNotEqual 56 57
383 BranchConditional 59 52 53
385 60: 7(fvec4) Load 10(input)
386 61: 7(fvec4) FNegate 60
389 64: 7(fvec4) Load 10(input)
390 65: 7(fvec4) CompositeConstruct 63 63 63 63
391 66: 7(fvec4) FAdd 64 65
400 74: 73(ptr) AccessChain 10(input) 72
402 76: 32(bool) FOrdGreaterThan 75 63
403 SelectionMerge 78 None
404 BranchConditional 76 77 78
417 84: 73(ptr) AccessChain 10(input) 72
419 86: 32(bool) FOrdGreaterThan 85 63
420 SelectionMerge 88 None
421 BranchConditional 86 87 88
435 99: 90(int) Load 92(ii)
436 101: 32(bool) SLessThan 99 100
437 BranchConditional 101 95 96
439 102: 90(int) Load 92(ii)
440 104: 32(bool) IEqual 102 103
441 SelectionMerge 106 None
442 BranchConditional 104 105 106
448 108: 90(int) Load 92(ii)
449 110: 90(int) IAdd 108 109
453 112: 6(float) Load 111(ii)
454 113: 6(float) FSub 112 18