xref: /aosp_15_r20/external/skia/resources/sksl/inliner/ModifiedArrayParametersCannotBeInlined.sksl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workeruniform half4 colorGreen, colorRed;
2*c8dee2aaSAndroid Build Coastguard Worker
3*c8dee2aaSAndroid Build Coastguard Workerfloat sumArray(float a[5]) {
4*c8dee2aaSAndroid Build Coastguard Worker    float sum = 0;
5*c8dee2aaSAndroid Build Coastguard Worker    for (int i = 0; i < 5; ++i) {
6*c8dee2aaSAndroid Build Coastguard Worker        sum += a[i];
7*c8dee2aaSAndroid Build Coastguard Worker    }
8*c8dee2aaSAndroid Build Coastguard Worker    return sum;
9*c8dee2aaSAndroid Build Coastguard Worker}
10*c8dee2aaSAndroid Build Coastguard Worker
11*c8dee2aaSAndroid Build Coastguard Workerfloat sumArrayMutating(float a[5]) {
12*c8dee2aaSAndroid Build Coastguard Worker    for (int i = 1; i < 5; ++i) {
13*c8dee2aaSAndroid Build Coastguard Worker        a[0] += a[i];
14*c8dee2aaSAndroid Build Coastguard Worker    }
15*c8dee2aaSAndroid Build Coastguard Worker    return a[0];
16*c8dee2aaSAndroid Build Coastguard Worker}
17*c8dee2aaSAndroid Build Coastguard Worker
18*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 coords) {
19*c8dee2aaSAndroid Build Coastguard Worker    float data[5];
20*c8dee2aaSAndroid Build Coastguard Worker    data[0] = 1;
21*c8dee2aaSAndroid Build Coastguard Worker    data[1] = 2;
22*c8dee2aaSAndroid Build Coastguard Worker    data[2] = 3;
23*c8dee2aaSAndroid Build Coastguard Worker    data[3] = 4;
24*c8dee2aaSAndroid Build Coastguard Worker    data[4] = 5;
25*c8dee2aaSAndroid Build Coastguard Worker    return sumArray(data) == sumArrayMutating(data) ? colorGreen : colorRed;
26*c8dee2aaSAndroid Build Coastguard Worker}
27