5abb9e1426
This shook out a long-standing bug; constant folding would treat a matrix resize as if the cells not covered by the original matrix were all zero. This is wrong; GLSL populates the unknown cells with an identity matrix. We actually tested for the wrong behavior, so the tests were updated to match the correct behavior, and an equivalent test was added that does not constant-fold (to verify that our constant folder matches reality). Change-Id: I03df10ce646fbef0a36e9c1a841a7637182de122 Bug: skia:11032 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/392916 Commit-Queue: John Stiles <johnstiles@google.com> Auto-Submit: John Stiles <johnstiles@google.com> Reviewed-by: Brian Osman <brianosman@google.com>
12 lines
341 B
GLSL
12 lines
341 B
GLSL
|
|
out vec4 sk_FragColor;
|
|
uniform vec4 colorRed;
|
|
uniform vec4 colorGreen;
|
|
uniform float unknownInput;
|
|
vec4 main() {
|
|
bool _0_ok = true;
|
|
_0_ok = _0_ok && mat3(unknownInput) == mat3(mat2(1.0));
|
|
_0_ok = _0_ok && mat3(9.0, 0.0, 0.0, 0.0, 9.0, 0.0, 0.0, 0.0, unknownInput) == mat3(mat2(9.0));
|
|
return _0_ok ? colorGreen : colorRed;
|
|
}
|