Go to file
John Stiles 16cbfb41df Implement statements and expressions in DSL C++ code generator.
This CL removes the bulk of the existing C++ code generator, especially
all the complex format-string assembly code. It has been replaced with
actual DSL code generation. Simple IR can now be successfully translated
to a working DSL fragment processor.

This CL also adds a simple test harness which is patterned after the
existing SkSLTest; it renders a pixel, reads it back, and fails the test
if the result isn't solid green (RGBA=0101).

This CL doesn't implement every feature. Some obvious gaps include:
- Sampling from children
- Uniforms/inputs of any kind
- Function calls of any kind

Change-Id: Ib80c23fe1ba4453f7c3cb43b65f93c5ea0deb709
Bug: skia:11854
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396757
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-04-20 19:28:36 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench Convert dmsaa to an SkSurfaceProp 2021-04-20 16:24:56 +00:00
bin Fix Python3 compatibility 2021-03-25 14:15:35 +00:00
build/fuchsia [fuchsia] Fix fidlc command. 2020-06-10 03:29:24 +00:00
build_overrides Prepare for Dawn using Tint unconditionally. 2021-03-12 15:05:26 +00:00
client_utils/android Replace 'typedef xxxxx INHERITED' with 'using INHERITED = xxxx;'. 2020-09-03 03:41:26 +00:00
demos.skia.org Demo different sampling options 2021-04-14 19:17:57 +00:00
dm Convert dmsaa to an SkSurfaceProp 2021-04-20 16:24:56 +00:00
docker [infra] Fix index.d.ts copy in Wasm Docker build 2021-02-23 15:54:11 +00:00
docs/examples Must pass filtering to picture shader 2021-03-18 22:18:47 +00:00
example Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
experimental [canvaskit] Proof of Concept for Typescript-build structure 2021-04-09 19:01:49 +00:00
fuzz Runtime effects: Support input color as a parameter to main() 2021-04-13 21:55:18 +00:00
gm Make SkSurfaceProps non-optional for SDCs and SkSpecialImages 2021-04-20 16:22:46 +00:00
gn Implement statements and expressions in DSL C++ code generator. 2021-04-20 19:28:36 +00:00
include Convert dmsaa to an SkSurfaceProp 2021-04-20 16:24:56 +00:00
infra Revert "Enable DAG reordering on all bots except one" 2021-04-20 15:48:07 +00:00
modules [canvaskit] Fix transform() call in test 2021-04-20 18:12:13 +00:00
platform_tools [androidkit] Start sketching out Paint 2021-04-16 01:56:04 +00:00
resources Implement statements and expressions in DSL C++ code generator. 2021-04-20 19:28:36 +00:00
samplecode Remove layout(marker) from runtime effect SkSL 2021-04-19 18:48:45 +00:00
site Remove layout(marker) from runtime effect SkSL 2021-04-19 18:48:45 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src Implement statements and expressions in DSL C++ code generator. 2021-04-20 19:28:36 +00:00
tests Implement statements and expressions in DSL C++ code generator. 2021-04-20 19:28:36 +00:00
third_party Roll skcms from 163066c2a041 to a638db877ef8 (1 revision) 2021-04-15 18:26:22 +00:00
tools Convert dmsaa to an SkSurfaceProp 2021-04-20 16:24:56 +00:00
.bazelignore bazel baby steps 2020-09-14 15:18:32 +00:00
.clang-format no more bin packing in .clang-format 2021-03-04 17:22:50 +00:00
.clang-tidy Disable ClangTidy namespace comments for short blocks. 2020-08-24 14:01:22 +00:00
.gitignore [sk] Add DEPS entry for "sk" tool 2021-04-09 14:21:37 +00:00
.gn Pre-emptive fix for upcoming ANGLE change. 2021-01-08 17:23:52 +00:00
AUTHORS Add UWP support 2021-02-10 19:04:42 +00:00
BUILD.bazel bazel baby steps 2020-09-14 15:18:32 +00:00
BUILD.gn Reland "Fix sk_app macOS raster window build conditions." 2021-04-19 18:25:44 +00:00
codereview.settings Make uploading to Gerrit the default for Skia 2016-11-09 19:07:56 +00:00
CONTRIBUTING Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
CQ_COMMITTERS Moved committer list to chrome-infra-auth and deleted it from the repo 2015-09-02 13:37:54 -07:00
DEPS Roll Chromium from 3e8dec5e7dff to f2c9d791993c (436 revisions) 2021-04-20 05:08:05 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go.mod [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
go.sum [infra] Roll infra dependency 2021-02-25 19:56:00 +00:00
LICENSE LICENSE file: clean up 2019-11-22 21:59:03 +00:00
PRESUBMIT.py Display a Docs-Preview link for each modified MD file 2021-04-02 01:08:04 +00:00
public.bzl Remove NVPR 2021-03-19 12:26:38 +00:00
README Fix references to https://sites.google.com/site/skiadocs/. 2015-02-03 13:12:54 -02:00
README.chromium Update README.chromium. 2015-06-11 13:19:24 -07:00
RELEASE_NOTES.txt Remove custom SkVertices data and runtime effect varying support 2021-04-19 17:49:25 +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.