skia2/tests/sksl
Brian Osman cbb60bd0b0 Add runtime color filter and shader modes to the SkSL compiler
These enforce stricter rules about the signature of main, and each one
uses a separate pre-include module. That prevents color filters from
being able to reference sk_FragCoord (or coords passed to main) at all.
It also limits the versions of sample() that are exposed.

In the new world, an effect created for a specific stage of the Skia
pipeline can only be used to create instances of that stage (SkShader or
SkColorFilter). For now, SkRuntimeEffect::Make uses kRuntimeEffect,
which continues to be more lenient and allow creation of either shaders
or color filters from a single effect. After we migrate all clients, we
can deprecate and then delete that mode.

Bug: skia:11813
Change-Id: I0afd79a72beeec84da42c86146e8fcd8d0e4c09f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/395716
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-15 13:30:59 +00:00
..
blend Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
errors Add runtime color filter and shader modes to the SkSL compiler 2021-04-15 13:30:59 +00:00
folding Represent matrix resizes as a dedicated expression type. 2021-04-06 18:35:06 +00:00
fp Use .dsl.cpp suffix for DSL C++ instead of _dsl.cpp. 2021-04-14 13:49:53 +00:00
glsl Remove specific blend mode layout qualifiers 2021-02-23 15:45:55 +00:00
inliner Run SkSL inliner tests as part of dm. 2021-03-25 22:58:54 +00:00
intrinsics Revert "Revert "Added more RelaxedPrecision decorations"" 2021-03-23 19:34:42 +00:00
metal Mangle function names in Metal. 2021-03-22 17:23:21 +00:00
runtime Add ivec GLSL type aliases to runtime effects 2021-04-12 16:55:41 +00:00
runtime_errors Add runtime color filter and shader modes to the SkSL compiler 2021-04-15 13:30:59 +00:00
shared Fix for loops with multiple init-variables in GLSL. 2021-04-14 21:40:19 +00:00
spirv Represent vector-cast constructors with ConstructorVectorCast. 2021-04-05 16:28:06 +00:00
workarounds Rewrite matrix * vector multiplication on ARM GPUs. 2021-03-24 19:21:44 +00:00
README.txt Migrate SkSL test inputs to the resources/ directory. 2021-01-22 18:57:29 +00:00

This directory contains skslc-compiled output from matching source files
in the /resources/sksl/ directory.