xref: /aosp_15_r20/external/skia/resources/sksl/shared/IfStatement.sksl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1uniform half4 colorWhite;
2
3half4 ifElseTest(half4 colorBlue, half4 colorGreen, half4 colorRed) {
4    half4 result = half4(0);
5    if (colorWhite != colorBlue) {    // TRUE
6        if (colorGreen == colorRed) { // FALSE
7            result = colorRed;
8        } else {
9            result = colorGreen;
10        }
11    } else {
12        if (colorRed != colorGreen) { // TRUE, but in a false branch
13            result = colorBlue;
14        } else {                      // FALSE, and in a false branch
15            result = colorWhite;
16        }
17    }
18    if (colorRed == colorBlue) { // FALSE
19        return colorWhite;
20    }
21    if (colorRed != colorGreen) { // TRUE
22        return result;
23    }
24    if (colorRed == colorWhite) { // FALSE
25        return colorBlue;
26    }
27    return colorRed;
28}
29
30half4 main(float2) {
31    return ifElseTest(colorWhite.00b1, colorWhite.0g01, colorWhite.r001);
32}
33