Go to file
Mike Klein 1cb05993af all-constant peepholes
This adds a bunch of tests for ops that can all be evaluated directly in
skvm::Builder.  You can see the sort of effect this has by looking at
the diffs for SkVMTest.expected... lots of `v3 = sub_f32 v2 v2`
transformed to `v3 = splat 0 (0)` and that sort of thing.

My favorite part is handling many assert_true() calls at compile time!

While the old inter-Op code parallels aren't as clear now, these new
early-out tests kind of work like comments explaining each op.  I find
that nice.  I found it hard to parse so many uses of the word "splat" so
I did go back to isImm() from isSplat(), and added allImm() to test for
and read several immediates all at once.

Some of this is less C++17 than I'd like. :/

Change-Id: Ie8187d5d184195e3c0c92d613508fb708c28302f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255814
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-11-21 22:00:11 +00:00
animations first cut at a checkbox 2009-10-21 19:41:10 +00:00
bench Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
bin [infra] Fix bin/try 2019-11-15 19:44:04 +00:00
build/fuchsia Use system-temp storage. 2019-11-20 20:47:42 +00:00
build_overrides Update Dawn backend to ToT. This is about 3 months of changes. 2019-10-15 22:26:38 +00:00
dm remove unused (by clients) SkMultiPictureDraw 2019-11-15 18:18:36 +00:00
docker Fix usage of depot_tools in containers. 2019-10-14 19:38:40 +00:00
docs/examples Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
example Revert "add guard to switch to SkPathTypes" 2019-09-14 19:13:44 +00:00
experimental Reland "Minimal iOS app: Perform present subsequent to flush" 2019-10-14 18:32:37 +00:00
fuzz Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
gm Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
gn [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
include Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
infra [canvaskit] Try some things to reduce GPU test flakiness 2019-11-21 20:56:42 +00:00
modules Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
platform_tools [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
resources all-constant peepholes 2019-11-21 22:00:11 +00:00
samplecode Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
site [infra] Update docs with respect to Go modules. 2019-11-18 18:04:19 +00:00
specs [img-decode] Start on proposed new spec 2019-05-06 17:39:19 +00:00
src all-constant peepholes 2019-11-21 22:00:11 +00:00
tests Use flat version of path-direction enum 2019-11-21 21:45:20 +00:00
third_party Replace third_party/gif with new DEPS entry. 2019-11-21 16:57:57 +00:00
tools [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
.clang-format restore .clang-format 2019-03-21 15:52:32 +00:00
.clang-tidy add google-build-namespaces to clang-tidy checks 2018-12-12 16:33:59 +00:00
.gitignore clean up some .gitignores 2019-05-15 19:55:45 +00:00
.gn Basic standalone GN configs. 2016-07-21 12:25:45 -07:00
AUTHORS Issue- >Skia tiled bitmap rendering is too slow when tildmodeX is not same as tileModeY. 2019-11-14 20:52:18 +00:00
BUILD.gn Replace third_party/gif with new DEPS entry. 2019-11-21 16:57:57 +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 third_party/externals/angle2 99bd10b70422..b8e748be6b94 (17 commits) 2019-11-21 06:23:53 +00:00
go.mod [infra] Use CIPD packages from infra repo 2019-11-20 14:02:48 +00:00
go.sum [infra] Use CIPD packages from infra repo 2019-11-20 14:02:48 +00:00
LICENSE BUG=skia:5602 2016-09-02 11:19:34 -07:00
OWNERS add OWNERS file 2017-12-01 19:50:19 +00:00
PRESUBMIT.py Use urllib_request instead of urllib2 in PRESUBMIT. 2019-10-22 20:30:56 +00:00
public.bzl Revert "public.bzl: update to replace Gif with Wuffs" 2019-11-20 21:44:04 +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 Clamp RGB outputs of GrYUVtoRGBEffect. 2019-11-11 20:04:15 +00:00
whitespace.txt Whitespace test 2019-05-18 13:05:29 +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.