skia2/resources/sksl
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
..
blend Change sksl tests to avoid SPIR-V validation errors 2021-03-16 13:39:53 +00:00
dslfp Honor static statements in DSL C++ codegen. 2021-04-30 18:40:08 +00:00
errors Simplify for init-stmts at the IR level. 2021-04-20 14:38:36 +00:00
folding Add test demonstrating swizzled constant folding. 2021-04-29 15:59:37 +00:00
fp Remove sample-with-matrix from SkSL 2021-04-28 15:44:35 +00:00
glsl Remove specific blend mode layout qualifiers 2021-02-23 15:45:55 +00:00
inliner Loosen ES3 restrictions in Runtime Effects for debugging. 2021-04-28 19:59:36 +00:00
intrinsics Reland "Add coords parameter to all .sksl test files used as runtime effects" 2021-04-27 20:47:31 +00:00
metal Allow repeated params in Metal out-params helper. 2021-02-16 15:45:45 +00:00
runtime Optimize compound constructors containing constant vars. 2021-05-05 16:42:56 +00:00
runtime_errors Remove flexible runtime effects entirely 2021-04-29 16:02:27 +00:00
shared Reland "Implement operator== and != for Metal structs and arrays." 2021-04-29 22:55:58 +00:00
spirv Revert "Fixed a number of spots where we should have been using RelaxedPrecision" 2021-03-12 18:48:57 +00:00
workarounds Add caps bit for RewriteMatrixVectorMultiply. 2021-03-23 22:40:02 +00:00
README.txt Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00

This directory contains source files for testing skslc compilation.
The compiled output files are in the /tests/sksl/ directory.