[pixel shader] float4 main() : SV_TARGET { float x = 5.0; float y = 15.0; return float4(x == y, x != y, x < y, x <= y); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] float4 main() : SV_TARGET { float x = 5.0; float y = 15.0; float zero = 0.0; return float4(x > y, x >= y, !x, !zero); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { float zero = 0.0; float one = 1.0; return float4(zero && zero, zero && one, one && zero, one && one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { float zero = 0.0; float one = 1.0; return float4(zero || zero, zero || one, one || zero, one || one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] float4 main() : SV_TARGET { int x = 5; int y = 15; return float4(x == y, x != y, x < y, x <= y); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] float4 main() : SV_TARGET { int x = 5; int y = 15; int zero = 0; return float4(x > y, x >= y, !x, !zero); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { int zero = 0; int one = 1; return float4(zero && zero, zero && one, one && zero, one && one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { int zero = 0; int one = 1; return float4(zero || zero, zero || one, one || zero, one || one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] float4 main() : SV_TARGET { uint x = 5; uint y = 15; return float4(x == y, x != y, x < y, x <= y); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] float4 main() : SV_TARGET { uint x = 5; uint y = 15; uint zero = 0; return float4(x > y, x >= y, !x, !zero); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { uint zero = 0; uint one = 1; return float4(zero && zero, zero && one, one && zero, one && one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 0.0, 0.0, 1.0) [pixel shader] float4 main() : SV_TARGET { uint zero = 0; uint one = 1; return float4(zero || zero, zero || one, one || zero, one || one); } [test] todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 1.0, 1.0) [pixel shader] int a, b; float4 main() : SV_TARGET { return float4(!(a && b), !!(a || b), !!!a, !(a < b)); } [test] if(sm<4) uniform 0 float 5 if(sm<4) uniform 4 float 0 if(sm>=4) uniform 0 int 5 if(sm>=4) uniform 1 int 0 todo(glsl) draw quad probe (0, 0) rgba (1.0, 1.0, 0.0, 1.0) if(sm<4) uniform 0 float -1 if(sm<4) uniform 4 float 3 if(sm>=4) uniform 0 int -1 if(sm>=4) uniform 1 int 3 todo(glsl) draw quad probe (0, 0) rgba (0.0, 1.0, 0.0, 0.0)