skia2/tests/sksl/folding/MatrixFoldingES3.glsl
John Stiles 2ac7682b53 Implement constant-folding for vector/matrix multiplication.
This closes one of the last gaps in SkSL's constant-folding abilities.

Change-Id: I65c0f2e5fe11a7d47ab2069b2992403fca78b8a7
Bug: skia:12819
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524761
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-03-25 21:42:47 +00:00

37 lines
906 B
GLSL

out vec4 sk_FragColor;
uniform vec4 colorRed;
uniform vec4 colorGreen;
bool test_eq_half_b() {
bool ok = true;
return ok;
}
bool test_matrix_op_matrix_float_b() {
bool ok = true;
return ok;
}
bool test_matrix_op_matrix_half_b() {
bool ok = true;
return ok;
}
bool test_vector_op_matrix_float_b() {
bool ok = true;
return ok;
}
bool test_vector_op_matrix_half_b() {
bool ok = true;
return ok;
}
bool test_matrix_op_vector_float_b() {
bool ok = true;
return ok;
}
bool test_matrix_op_vector_half_b() {
bool ok = true;
return ok;
}
vec4 main() {
bool _0_ok = true;
return ((((((_0_ok && test_eq_half_b()) && test_matrix_op_matrix_float_b()) && test_matrix_op_matrix_half_b()) && test_vector_op_matrix_float_b()) && test_vector_op_matrix_half_b()) && test_matrix_op_vector_float_b()) && test_matrix_op_vector_half_b() ? colorGreen : colorRed;
}