Go to file
Brian Osman 8e2ef02855 Support variables in the intrinsic map, clone them into Programs
As a first step, convert sksl_pipeline.sksl to an IntrinsicMap (rather
than inherited element list). This makes the new code operate on
sk_FragCoord (which was previously being shared by all runtime effect
programs).

The new unit test angered TSAN, and now runs without complaint.

Also finish converting the .fp intrinsics over, so those don't need an
inherited element list either. And while doing that, refactor that
parsing to match all of the others. FP was uniquely implementing
processIncludeFile itself, rather than reusing the pattern of other
pre-include parsing.

The meat of the CL is the subtle changes in Compiler, and the logic in
cloneBuiltinVariables. Note that we need to clone the global variable
declaration element (because one of the goals is to get rid of shared
and inherited program elements), but also the variable itself (and the
new copy needs to live in the program's symbol table).

Bug: skia:10589
Bug: skia:10679
Bug: skia:10680
Change-Id: Ied352f8434dac2b8eacb4e515b014b6af7b57d20
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/319023
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2020-10-01 20:30:33 +00:00
animations
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench Update nanobench SkSL tests. 2020-09-30 14:17:07 +00:00
bin bin/try: automatically set 'git cl issue' when not found 2020-06-25 17:44:01 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Port to ANGLE's GN files 2020-09-11 15:22:34 +00:00
client_utils/android Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
demos.skia.org [canvaskit] Add demo on how to decode images in web worker 2020-09-17 20:15:05 +00:00
dm Reland "Add idea of DataType to SkYUVAPixmapInfo." 2020-09-03 18:05:17 +00:00
docker [canvaskit,pathkit] Update to emsdk 2.0 2020-08-20 14:55:50 +00:00
docs/examples Only expose isConvex on path publicly. 2020-08-28 16:56:29 +00:00
example Clean up GrContext references in the src/gpu 2020-07-16 14:14:08 +00:00
experimental Revert "Reland "Take GrContext private, GrDDLContext inherit from GrRecordingContext"" 2020-09-24 11:44:49 +00:00
fuzz [fuzz] Make libfuzzer defines backwards compatible for roll 2020-09-14 17:43:00 +00:00
gm Fix gms placing text in bounds. 2020-09-28 16:35:13 +00:00
gn Move bytesPerPixel query off of GrCaps and add bytesPerBlock query. 2020-10-01 20:10:12 +00:00
include Remove unused field from DeviceCM 2020-10-01 20:15:18 +00:00
infra Move MacOS 10.13 Metal jobs to 10.15. 2020-09-29 15:23:15 +00:00
modules [sksg] Fix uninitialized DashEffect attribute 2020-10-01 20:25:27 +00:00
platform_tools Migrate skottie to GrDirectContext 2020-09-21 17:13:41 +00:00
resources [skottie] Add support for invert/YIQ 2020-09-11 14:55:44 +00:00
samplecode Fix CanvasKit warnings compiling on Mac with emsdk 2.0.0 2020-09-18 20:35:12 +00:00
site Revert "Reland "Take GrContext private, GrDDLContext inherit from GrRecordingContext"" 2020-09-24 11:44:49 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src Support variables in the intrinsic map, clone them into Programs 2020-10-01 20:30:33 +00:00
tests Support variables in the intrinsic map, clone them into Programs 2020-10-01 20:30:33 +00:00
third_party Add AMD allocator to D3D12 backend. 2020-09-23 21:22:52 +00:00
tools Fix vulkan input usage flag for VulkanWindowContext. 2020-10-01 20:20:22 +00:00
.bazelignore bazel baby steps 2020-09-14 15:18:32 +00:00
.clang-format Disable BinPackParameters in .clang-format 2020-03-27 14:32:40 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore bazel baby steps 2020-09-14 15:18:32 +00:00
.gn
AUTHORS Search ICU data on Windows relative to the current module. 2020-08-20 14:51:42 +00:00
BUILD.bazel bazel baby steps 2020-09-14 15:18:32 +00:00
BUILD.gn Add golden outputs for the Metal backend. 2020-09-25 17:46:43 +00:00
codereview.settings
CONTRIBUTING
CQ_COMMITTERS
DEPS Roll ANGLE from fa082bb58ba7 to b09f16ee7aeb (16 revisions) 2020-10-01 20:20:23 +00:00
go.mod Update Go Deps 2020-07-25 05:33:32 +00:00
go.sum Update Go Deps 2020-07-25 05:33:32 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py Generate SkSL golden output files from test inputs during the build. 2020-09-14 14:54:12 +00:00
public.bzl Reland "include freetype in wasm build, see cl/332073924 for complete change" 2020-09-22 18:01:09 +00:00
README
README.chromium
RELEASE_NOTES.txt Get GrBackendRenderTarget's sample count from MtlTexture. 2020-09-30 20:40:33 +00:00
whitespace.txt Whitespace change to re-trigger Mac/iOS tests 2020-02-23 20:55:01 +00:00
WORKSPACE.bazel bazel baby steps 2020-09-14 15:18:32 +00:00

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

See full details, and build instructions, at https://skia.org.