xref: /aosp_15_r20/external/skia/resources/sksl/shared/WhileLoopControlFlow.sksl (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Workerhalf4 main(float2 coords) {
2*c8dee2aaSAndroid Build Coastguard Worker    half4 x = half4(1, 1, 1, 1);
3*c8dee2aaSAndroid Build Coastguard Worker
4*c8dee2aaSAndroid Build Coastguard Worker    // Verify that break is allowed in a while loop.
5*c8dee2aaSAndroid Build Coastguard Worker    while (x.a == 1) {
6*c8dee2aaSAndroid Build Coastguard Worker        x.r -= 0.25;
7*c8dee2aaSAndroid Build Coastguard Worker        if (x.r <= 0) break;
8*c8dee2aaSAndroid Build Coastguard Worker    }
9*c8dee2aaSAndroid Build Coastguard Worker
10*c8dee2aaSAndroid Build Coastguard Worker    // Verify that continue is allowed in a while loop.
11*c8dee2aaSAndroid Build Coastguard Worker    while (x.b > 0) {
12*c8dee2aaSAndroid Build Coastguard Worker        x.b -= 0.25;
13*c8dee2aaSAndroid Build Coastguard Worker        if (x.a == 1) continue; // should always happen
14*c8dee2aaSAndroid Build Coastguard Worker        x.g = 0;
15*c8dee2aaSAndroid Build Coastguard Worker    }
16*c8dee2aaSAndroid Build Coastguard Worker
17*c8dee2aaSAndroid Build Coastguard Worker    // x contains green.
18*c8dee2aaSAndroid Build Coastguard Worker    return x;
19*c8dee2aaSAndroid Build Coastguard Worker}
20