xref: /aosp_15_r20/external/skia/resources/sksl/shared/OperatorsES2.sksl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workeruniform half4 colorGreen, colorRed;
2*c8dee2aaSAndroid Build Coastguard Workeruniform half unknownInput;
3*c8dee2aaSAndroid Build Coastguard Worker
4*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 coords) {
5*c8dee2aaSAndroid Build Coastguard Worker    float x = 1, y = 2;
6*c8dee2aaSAndroid Build Coastguard Worker    int z = 3;
7*c8dee2aaSAndroid Build Coastguard Worker    x = x - x + y * x * x * (y - x);
8*c8dee2aaSAndroid Build Coastguard Worker    y = x / y / x;
9*c8dee2aaSAndroid Build Coastguard Worker    z = (z / 2 * 3 + 4) - 2;
10*c8dee2aaSAndroid Build Coastguard Worker    bool b = (x > 4) == x < 2 || 2 >= unknownInput && y <= x;
11*c8dee2aaSAndroid Build Coastguard Worker    bool c = unknownInput > 2;
12*c8dee2aaSAndroid Build Coastguard Worker    bool d = b ^^ !!c;
13*c8dee2aaSAndroid Build Coastguard Worker    bool e = b && c;
14*c8dee2aaSAndroid Build Coastguard Worker    bool f = !!b || c;
15*c8dee2aaSAndroid Build Coastguard Worker    x += 12;
16*c8dee2aaSAndroid Build Coastguard Worker    x -= 12;
17*c8dee2aaSAndroid Build Coastguard Worker    x *= y /= 10;
18*c8dee2aaSAndroid Build Coastguard Worker    x = 6;
19*c8dee2aaSAndroid Build Coastguard Worker    y = float(b) * float(c) * float(d) * float(e) * float(f);
20*c8dee2aaSAndroid Build Coastguard Worker    y = 6;
21*c8dee2aaSAndroid Build Coastguard Worker    z = z - 1;
22*c8dee2aaSAndroid Build Coastguard Worker    z = 6;
23*c8dee2aaSAndroid Build Coastguard Worker
24*c8dee2aaSAndroid Build Coastguard Worker    return (x == 6 && y == 6 && z == 6) ? colorGreen : colorRed;
25*c8dee2aaSAndroid Build Coastguard Worker}
26