skia2/tests/sksl/folding
John Stiles 34c098d7f8 Add SkSL test demonstrating missed optimization with +=.
Currently, SkSL is able to constant-propagate `x = x + constant` into
`x = constant` when the starting value of x is known. However, it is not
able to do the same optimization for `x += constant`. This test
demonstrates that once += is encountered, we lose track of x's value and
can no longer propagate its value.

(This is equally true of all the op-assignment operators, += -=
*= /= etc.)

Change-Id: I3523e96baf9a73982cf3b09f0d23b95adacf106b
Bug: skia:11192
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/368248
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-02-09 19:17:26 +00:00
..
AssignmentOps.glsl Add SkSL test demonstrating missed optimization with +=. 2021-02-09 19:17:26 +00:00
BoolFolding.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
FloatFolding.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
IntFoldingES2.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
IntFoldingES3.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
MatrixFoldingES2.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
MatrixFoldingES3.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
ShortCircuitBoolFolding.glsl Support half4 return values from main() in the SPIR-V code generator. 2021-01-27 02:46:03 +00:00
VectorScalarFolding.glsl Add additional cases to folding tests. 2021-02-08 16:17:18 +00:00
VectorVectorFolding.glsl Add additional cases to folding tests. 2021-02-08 16:17:18 +00:00