skia2/tools/viewer
Mike Klein 813e8cc762 add a global may-we-JIT flag
The most interesting part of the CL is that we recheck gSkVMAllowJIT in
Program::eval() even though we've already checked it in the constructor.
This allows Viewer to toggle the JIT on and off without having to worry
about program caching. This is not something that you'd expect to come
up in practice if a program just sets gSkVMAllowJIT at the start of
main(); for real clients I think we can avoid all this with a simple
SkGraphics::allowJIT() that only lets clients opt-in, never back out.

I toyed with making '!' rotate through a tristate in Viewer, until I
realized that these really are independent bits: GMs like threshold_rt
that use both ordinary effects and SkVM-only effects demonstrate
different behavior and performance in all four modes.  So '!' continues
to toggle SkVMBlitter, and now '@' toggles the JIT.

I've left the test program default settings unchanged, with the JIT
enabled unless --nojit is passed.  Where we previously simplified the
command line by conflating --dylib with --skvm, we now conflate --dylib
with --jit.

Change-Id: If86bf524c657298c0846bcd33c706e3c3f91e788
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/308184
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-08-05 16:35:45 +00:00
..
AnimTimer.h tools: separate TimeUtils from AnimTimer 2019-07-12 15:05:01 +00:00
BisectSlide.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
BisectSlide.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
GMSlide.cpp Add a convenience to downcast contexts into GrDirectContext 2020-07-07 18:13:50 +00:00
GMSlide.h Adjust how GM::gpuSetup is handled in the tools 2020-06-26 15:37:30 +00:00
ImageSlide.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ImageSlide.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
ImGuiLayer.cpp Fix modifier key handling in OS X to allow command-keys to work. 2020-07-01 16:07:03 +00:00
ImGuiLayer.h Update ImGui to latest stable version (1.77). 2020-07-01 02:29:22 +00:00
ParticlesSlide.cpp Pure SkSL RNG for particles 2020-04-10 17:20:07 +00:00
ParticlesSlide.h Particles: Remove play-position thing, simplify mouse tracking 2019-12-05 20:07:13 +00:00
SampleSlide.cpp tools/skui: put all enums in a common namespace 2019-08-29 15:39:32 +00:00
SampleSlide.h tools/skui: put all enums in a common namespace 2019-08-29 15:39:32 +00:00
SkottieSlide.cpp [skottie] Re-enable inval tracking in viewer 2020-07-29 15:21:06 +00:00
SkottieSlide.h [skottie] Add support for embedded fonts (glyph paths) 2020-05-21 01:27:34 +00:00
SKPSlide.cpp Add an skp loader to CanvasKit viewer 2020-05-28 17:29:28 +00:00
SKPSlide.h Add an skp loader to CanvasKit viewer 2020-05-28 17:29:28 +00:00
SkRiveSlide.cpp [skrive] Reset the node system 2020-06-19 20:00:55 +00:00
SkRiveSlide.h [skrive] Initial artboard plumbing 2020-06-09 19:58:38 +00:00
SkSLSlide.cpp Fix range-based for loops which copy the loop variable unnecessarily. 2020-07-31 01:02:21 +00:00
SkSLSlide.h In SkSLSlide, directly use Viewer's shader error handler 2020-06-18 19:24:02 +00:00
Slide.h Update Slide::getName to return a const reference. 2020-07-28 17:37:01 +00:00
SlideDir.cpp Fix clang 12 Wsuggest-override and Wsuggest-destructor-override 2020-07-22 01:11:36 +00:00
SlideDir.h [skottie] Cleanup: relocate Animator base class out of SkSG 2020-03-26 20:50:10 +00:00
StatsLayer.cpp Remove SkTMin and SkTMax 2020-02-07 18:40:09 +00:00
StatsLayer.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SvgSlide.cpp Add svg parsing to CanvasKit viewer.html 2020-05-28 20:39:43 +00:00
SvgSlide.h Add svg parsing to CanvasKit viewer.html 2020-05-28 20:39:43 +00:00
TouchGesture.cpp Hook up pinch-zoom and swipe gestures. 2019-09-10 13:34:47 +00:00
TouchGesture.h Hook up pinch-zoom and swipe gestures. 2019-09-10 13:34:47 +00:00
Viewer.cpp add a global may-we-JIT flag 2020-08-05 16:35:45 +00:00
Viewer.h In SkSLSlide, directly use Viewer's shader error handler 2020-06-18 19:24:02 +00:00