123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- #version 400
- flat in ivec4 uiv4;
- in vec4 uv4;
- bool ub;
- bool uba;
- bvec4 ub41, ub42;
- in float uf;
- flat in int ui;
- out float of1;
- out vec4 of4;
- bool foo() { ++of1; return of1 > 10.0; }
- void main()
- {
- of1 = 0.0;
- of4 = vec4(0.0);
- if (ub || ui > 2) // not worth short circuiting
- ++of1;
- if (ub && !uba) // not worth short circuiting
- ++of1;
- if (ub || foo()) // must short circuit
- ++of1;
- if (ub && foo()) // must short circuit
- ++of1;
- if (foo() || ub) // not worth short circuiting
- ++of1;
- if (foo() && ub) // not worth short circuiting
- ++of1;
- if (ub || ++of1 > 1.0) // must short circuit
- ++of4;
- if (++of1 > 1.0 || ub) // not worth short circuiting
- ++of4;
- if (ub || sin(uf) * 4.0 > of1) // worth short circuiting
- ++of1;
- if (ub && sin(uf) * 4.0 > of1) // worth short circuiting
- ++of1;
- }
|