xref: /aosp_15_r20/external/skia/tests/sksl/shared/IfStatement.glsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker
2*c8dee2aaSAndroid Build Coastguard Workerout vec4 sk_FragColor;
3*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 colorWhite;
4*c8dee2aaSAndroid Build Coastguard Workervec4 ifElseTest_h4h4h4h4(vec4 colorBlue, vec4 colorGreen, vec4 colorRed) {
5*c8dee2aaSAndroid Build Coastguard Worker    vec4 result = vec4(0.0);
6*c8dee2aaSAndroid Build Coastguard Worker    if (colorWhite != colorBlue) {
7*c8dee2aaSAndroid Build Coastguard Worker        if (colorGreen == colorRed) {
8*c8dee2aaSAndroid Build Coastguard Worker            result = colorRed;
9*c8dee2aaSAndroid Build Coastguard Worker        } else {
10*c8dee2aaSAndroid Build Coastguard Worker            result = colorGreen;
11*c8dee2aaSAndroid Build Coastguard Worker        }
12*c8dee2aaSAndroid Build Coastguard Worker    } else {
13*c8dee2aaSAndroid Build Coastguard Worker        if (colorRed != colorGreen) {
14*c8dee2aaSAndroid Build Coastguard Worker            result = colorBlue;
15*c8dee2aaSAndroid Build Coastguard Worker        } else {
16*c8dee2aaSAndroid Build Coastguard Worker            result = colorWhite;
17*c8dee2aaSAndroid Build Coastguard Worker        }
18*c8dee2aaSAndroid Build Coastguard Worker    }
19*c8dee2aaSAndroid Build Coastguard Worker    if (colorRed == colorBlue) {
20*c8dee2aaSAndroid Build Coastguard Worker        return colorWhite;
21*c8dee2aaSAndroid Build Coastguard Worker    }
22*c8dee2aaSAndroid Build Coastguard Worker    if (colorRed != colorGreen) {
23*c8dee2aaSAndroid Build Coastguard Worker        return result;
24*c8dee2aaSAndroid Build Coastguard Worker    }
25*c8dee2aaSAndroid Build Coastguard Worker    if (colorRed == colorWhite) {
26*c8dee2aaSAndroid Build Coastguard Worker        return colorBlue;
27*c8dee2aaSAndroid Build Coastguard Worker    }
28*c8dee2aaSAndroid Build Coastguard Worker    return colorRed;
29*c8dee2aaSAndroid Build Coastguard Worker}
30*c8dee2aaSAndroid Build Coastguard Workervec4 main() {
31*c8dee2aaSAndroid Build Coastguard Worker    return ifElseTest_h4h4h4h4(vec4(0.0, 0.0, colorWhite.z, 1.0), vec4(0.0, colorWhite.y, 0.0, 1.0), vec4(colorWhite.x, 0.0, 0.0, 1.0));
32*c8dee2aaSAndroid Build Coastguard Worker}
33