skia2/include
John Stiles 65aae8a51a Disable SkSL optimization when SkRuntimeEffect::MakeTraced is called.
SkRuntimeEffect::MakeForXxxxx compiles its shaders before MakeTraced()
is invoked, with optimizations enabled. When MakeTraced() is called,
we recompile the shader with optimizations disabled; this allows us to
present the user with a shader that is as close to the original as
possible. (This obviously costs time, but debug trace generation isn't
focused on speed.)

Note that in some rare instances, disabling optimizations can cause
compilation to fail (e.g. optimization can simplify control flow and
eliminate "unreachable" paths). In those cases, we fall back to the
existing behavior of debugging an optimized shader.

Change-Id: Iba0f31bc42374c7048694fde5415b122177a9a68
Bug: skia:12666
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/489716
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-12-29 18:54:19 +00:00
..
android [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
c [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
codec Clarify SkCodec::getFrameInfo comment re animation 2021-12-06 14:46:58 +00:00
config [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
core Remove SkM44.h include from SkImage.h. 2021-12-23 13:45:20 +00:00
docs [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
effects Disable SkSL optimization when SkRuntimeEffect::MakeTraced is called. 2021-12-29 18:54:19 +00:00
encode [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
gpu [graphite] Move GrProcessorKeyBuilder to generic skgpu::KeyBuilder class. 2021-12-20 20:41:17 +00:00
pathops [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
ports [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
private [graphite] Move GrResourceKey to skgpu::ResourceKey. 2021-12-23 22:55:19 +00:00
sksl Add SkRuntimeEffect::MakeTraced API for SkShader debugging. 2021-12-07 22:34:00 +00:00
svg [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
third_party [infra] Experiment generating BUILD.bazel files 2021-11-23 18:53:16 +00:00
utils Remove canvas marker stack, marked matrices, etc... 2021-12-09 16:22:16 +00:00
OWNERS Add Bazel folks as owners to BUILD.bazel files 2021-11-09 14:24:54 +00:00