| uniform half4 colorGreen; |
| uniform half4 colorRed; |
| struct S_0 |
| { |
| float f1; |
| float f2; |
| float f3; |
| }; |
| bool test_same_structs_0(bool eq, float f1, float f2, float f3); |
| bool test_diff_structs_0(bool eq, float f1, float f2, float f3); |
| bool test_same_structs_0(bool eq, float f1, float f2, float f3) |
| { |
| float one = float(colorGreen.x + 1.0); |
| S_0 a; |
| a.f1 = f1; |
| a.f2 = f2; |
| a.f3 = f3; |
| S_0 b; |
| b.f1 = f1 * one; |
| b.f2 = f2 * one; |
| b.f3 = f3 * one; |
| return eq ? a == b : a != b; |
| } |
| bool test_diff_structs_0(bool eq, float f1, float f2, float f3) |
| { |
| float two = float(colorGreen.x + 2.0); |
| S_0 a; |
| a.f1 = f1; |
| a.f2 = f2; |
| a.f3 = f3; |
| S_0 b; |
| b.f1 = f1 * two; |
| b.f2 = f2 * two; |
| b.f3 = f3; |
| return eq ? a == b : a != b; |
| } |
| float4 main(float2 coords) |
| { |
| float NAN1 = float(colorGreen.x / colorGreen.z); |
| float NAN2 = float(colorGreen.z / colorGreen.x); |
| float ZP = float(colorGreen.x * colorGreen.z); |
| float ZM = float(-colorGreen.x * colorGreen.z); |
| float F42 = float(colorGreen.y * 42.0); |
| float F43 = float(colorGreen.y * 43.0); |
| float F44 = float(colorGreen.y * 44.0); |
| bool EQ = true; |
| bool NE = false; |
| float _0_one = float(colorGreen.x + 1.0); |
| S_0 _1_a; |
| _1_a.f1 = F42; |
| _1_a.f2 = ZM; |
| _1_a.f3 = ZP; |
| S_0 _2_b; |
| _2_b.f1 = F42 * _0_one; |
| _2_b.f2 = ZM * _0_one; |
| _2_b.f3 = ZP * _0_one; |
| return half4(float4((((((((EQ ? _1_a == _2_b : _1_a != _2_b) && !test_same_structs_0(NE, F42, ZM, ZP)) && test_same_structs_0(NE, F42, NAN1, NAN2)) && !test_same_structs_0(EQ, F42, NAN1, NAN2)) && test_diff_structs_0(NE, F42, F43, F44)) && !test_diff_structs_0(EQ, F42, F43, F44)) && test_diff_structs_0(NE, NAN1, ZM, ZP)) && !test_diff_structs_0(EQ, NAN1, ZM, ZP) ? colorGreen : colorRed)); |
| } |