xref: /aosp_15_r20/external/skia/tests/sksl/folding/ArrayFolding.glsl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker
2*c8dee2aaSAndroid Build Coastguard Workerout vec4 sk_FragColor;
3*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 colorRed;
4*c8dee2aaSAndroid Build Coastguard Workeruniform vec4 colorGreen;
5*c8dee2aaSAndroid Build Coastguard Workerint globalValue = 0;
6*c8dee2aaSAndroid Build Coastguard Workerint side_effecting_ii(int value) {
7*c8dee2aaSAndroid Build Coastguard Worker    globalValue++;
8*c8dee2aaSAndroid Build Coastguard Worker    return value;
9*c8dee2aaSAndroid Build Coastguard Worker}
10*c8dee2aaSAndroid Build Coastguard Workervec4 main() {
11*c8dee2aaSAndroid Build Coastguard Worker    int _7_two = 2;
12*c8dee2aaSAndroid Build Coastguard Worker    const int _8_flatten0 = 1;
13*c8dee2aaSAndroid Build Coastguard Worker    int _9_flatten1 = _7_two;
14*c8dee2aaSAndroid Build Coastguard Worker    const int _10_flatten2 = 3;
15*c8dee2aaSAndroid Build Coastguard Worker    int _11_noFlatten0 = int[3](--_7_two, side_effecting_ii(2), 3)[0];
16*c8dee2aaSAndroid Build Coastguard Worker    int _12_noFlatten1 = int[3](side_effecting_ii(1), 2, 3)[1];
17*c8dee2aaSAndroid Build Coastguard Worker    int _13_noFlatten2 = int[3](1, ++_7_two, 3)[2];
18*c8dee2aaSAndroid Build Coastguard Worker    return (_8_flatten0 == _11_noFlatten0 && _9_flatten1 == _12_noFlatten1) && _10_flatten2 == _13_noFlatten2 ? colorGreen : colorRed;
19*c8dee2aaSAndroid Build Coastguard Worker}
20