skia2/resources/sksl/runtime
John Stiles 8c9ccc8ad1 Optimize compound constructors containing constant vars.
A constructor like `float2(one, two)` is not a compile-time constant, so
we miss optimization opportunities like folding. Constant variables
inside compound constructors are now replaced when optimization is on,
so this would optimize down to `float2(1.0, 2.0)` and be eligible for
folding.

Change-Id: I80dd421f61d4eed21278805e2dc26d198a678e52
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/404657
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-05-05 16:42:56 +00:00
..
ArrayIndexing.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
ConstPreservation.rts Optimize compound constructors containing constant vars. 2021-05-05 16:42:56 +00:00
ConversionConstructors.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
GlobalVariables.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
GLSLTypeNames.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
LoopFloat.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
LoopInt.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
SampleWithExplicitCoord.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
VectorIndexing.rts Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00