169c8903be
This is a reland of 22dcb5fd7e
Original change's description:
> Add coords parameter to all .sksl test files used as runtime effects
>
> Convert to use the newer MakeForShader factory, which requires this.
>
> Change-Id: Ifaf6054054027c78f3f3fe15596e435e0f79b877
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/399336
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: John Stiles <johnstiles@google.com>
Bug: skia:11919
Change-Id: I5f745c54b2bc3712f2281db6e067345903e81931
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/401836
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
80 lines
1.8 KiB
Plaintext
80 lines
1.8 KiB
Plaintext
uniform half4 colorRed, colorGreen;
|
|
uniform half unknownInput;
|
|
|
|
bool test() {
|
|
int unknown = int(unknownInput);
|
|
|
|
bool ok = true;
|
|
int x = 32 + 2;
|
|
ok = ok && (x == 34);
|
|
x = 32 - 2;
|
|
ok = ok && (x == 30);
|
|
x = 32 * 2;
|
|
ok = ok && (x == 64);
|
|
x = 32 / 2;
|
|
ok = ok && (x == 16);
|
|
x = -1 == -1 ? 1 : -1;
|
|
ok = ok && (x == 1);
|
|
x = -1 == -2 ? 2 : -2;
|
|
ok = ok && (x == -2);
|
|
x = 0 != 1 ? 3 : -3;
|
|
ok = ok && (x == 3);
|
|
x = 0 != 0 ? 4 : -4;
|
|
ok = ok && (x == -4);
|
|
x = 6 > 5 ? 5 : -5;
|
|
ok = ok && (x == 5);
|
|
x = 6 > 6 ? 6 : -6;
|
|
ok = ok && (x == -6);
|
|
x = -1 < 0 ? 7 : -7;
|
|
ok = ok && (x == 7);
|
|
x = 1 < 0 ? 8 : -8;
|
|
ok = ok && (x == -8);
|
|
x = 6 >= 6 ? 9 : -9;
|
|
ok = ok && (x == 9);
|
|
x = 6 >= 7 ? 10 : -10;
|
|
ok = ok && (x == -10);
|
|
x = 6 <= 6 ? 11 : -11;
|
|
ok = ok && (x == 11);
|
|
x = 6 <= 5 ? 12 : -12;
|
|
ok = ok && (x == -12);
|
|
x = unknown + 0;
|
|
ok = ok && (x == unknown);
|
|
x = 0 + unknown;
|
|
ok = ok && (x == unknown);
|
|
x = unknown - 0;
|
|
ok = ok && (x == unknown);
|
|
x = unknown * 0;
|
|
ok = ok && (x == 0);
|
|
x = unknown * 1;
|
|
ok = ok && (x == unknown);
|
|
x = 1 * unknown;
|
|
ok = ok && (x == unknown);
|
|
x = 0 * unknown;
|
|
ok = ok && (x == 0);
|
|
x = unknown / 1;
|
|
ok = ok && (x == unknown);
|
|
x = 0 / unknown;
|
|
ok = ok && (x == 0);
|
|
x += 1; // TODO(skia:11192): constant propagation for `+=` style operators
|
|
ok = ok && (x == 1);
|
|
x += 0;
|
|
ok = ok && (x == 1);
|
|
x -= 2;
|
|
ok = ok && (x == -1);
|
|
x -= 0;
|
|
ok = ok && (x == -1);
|
|
x *= 1;
|
|
ok = ok && (x == -1);
|
|
x *= 2;
|
|
ok = ok && (x == -2);
|
|
x /= 1;
|
|
ok = ok && (x == -2);
|
|
x /= 2;
|
|
ok = ok && (x == -1);
|
|
return ok;
|
|
}
|
|
|
|
half4 main(float2 coords) {
|
|
return test() ? colorGreen : colorRed;
|
|
}
|