• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2out vec4 sk_FragColor;
3uniform vec4 colorGreen;
4uniform vec4 colorRed;
5const int minus = 2;
6const int star = 3;
7const int slash = 4;
8bool test_bifffff22(int op, float m11, float m12, float m21, float m22, mat2 expected) {
9    float one = colorRed.x;
10    mat2 m2 = mat2(m11 * one, m12 * one, m21 * one, m22 * one);
11    switch (op) {
12        case 1:
13            m2 += 1.0;
14            break;
15        case 2:
16            m2 -= 1.0;
17            break;
18        case 3:
19            m2 *= 2.0;
20            break;
21        case 4:
22            m2 /= 2.0;
23            break;
24    }
25    return ((m2[0].x == expected[0].x && m2[0].y == expected[0].y) && m2[1].x == expected[1].x) && m2[1].y == expected[1].y;
26}
27vec4 main() {
28    float f1 = colorGreen.y;
29    float f2 = 2.0 * colorGreen.y;
30    float f3 = 3.0 * colorGreen.y;
31    float f4 = 4.0 * colorGreen.y;
32    mat2 _0_expected = mat2(f1 + 1.0, f2 + 1.0, f3 + 1.0, f4 + 1.0);
33    float _1_one = colorRed.x;
34    mat2 _2_m2 = mat2(f1 * _1_one, f2 * _1_one, f3 * _1_one, f4 * _1_one);
35    {
36        _2_m2 += 1.0;
37    }
38    return (((((_2_m2[0].x == _0_expected[0].x && _2_m2[0].y == _0_expected[0].y) && _2_m2[1].x == _0_expected[1].x) && _2_m2[1].y == _0_expected[1].y) && test_bifffff22(minus, f1, f2, f3, f4, mat2(f1 - 1.0, f2 - 1.0, f3 - 1.0, f4 - 1.0))) && test_bifffff22(star, f1, f2, f3, f4, mat2(f1 * 2.0, f2 * 2.0, f3 * 2.0, f4 * 2.0))) && test_bifffff22(slash, f1, f2, f3, f4, mat2(f1 / 2.0, f2 / 2.0, f3 / 2.0, f4 / 2.0)) ? colorGreen : colorRed;
39}
40