skia2/tests/sksl/shared/Matrices.glsl
John Stiles 511c500ad4 Avoid generating unused variables in the Inliner.
These variables were later being eliminated by the dead-code-elimination
pass, so you can't see them directly in the final output, but removing
them affects the name mangling off all future symbols, so it causes an
enormous ripple effect in the diff. And of course, it's a waste of time
and memory to synthesize IRNodes just to destroy them later.

If we disable control-flow analysis, we lose the dead-code-elimination
pass entirely; this change is also beneficial for emitting better code
when optimizations are turned off.

Change-Id: I882b3be4f3fd99b77d99b6abe128f26bb9252c89
Bug: skia:11319
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/375776
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-02-25 19:18:19 +00:00

24 lines
589 B
GLSL

out vec4 sk_FragColor;
uniform vec4 colorGreen;
uniform vec4 colorRed;
vec4 main() {
mat2 _0_m3 = mat2(1.0, 2.0, 3.0, 4.0);
_0_m3 *= mat2(1.0);
mat2 _1_m5 = mat2(mat2(1.0, 2.0, 3.0, 4.0)[0].x);
mat2 _2_m6 = mat2(1.0, 2.0, 3.0, 4.0);
_2_m6 += _1_m5;
mat4 _3_m11 = mat4(2.0);
_3_m11 -= mat4(1.0);
mat2 _4_m3 = mat2(1.0, 2.0, 3.0, 4.0);
_4_m3 *= mat2(1.0);
mat2 _5_m5 = mat2(mat2(1.0, 2.0, 3.0, 4.0)[0].x);
mat2 _6_m6 = mat2(1.0, 2.0, 3.0, 4.0);
_6_m6 += _5_m5;
mat4 _7_m11 = mat4(2.0);
_7_m11 -= mat4(1.0);
return colorGreen;
}