1cb05993af
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> |
||
---|---|---|
animations | ||
bench | ||
bin | ||
build/fuchsia | ||
build_overrides | ||
dm | ||
docker | ||
docs/examples | ||
example | ||
experimental | ||
fuzz | ||
gm | ||
gn | ||
include | ||
infra | ||
modules | ||
platform_tools | ||
resources | ||
samplecode | ||
site | ||
specs | ||
src | ||
tests | ||
third_party | ||
tools | ||
.clang-format | ||
.clang-tidy | ||
.gitignore | ||
.gn | ||
AUTHORS | ||
BUILD.gn | ||
codereview.settings | ||
CONTRIBUTING | ||
CQ_COMMITTERS | ||
DEPS | ||
go.mod | ||
go.sum | ||
LICENSE | ||
OWNERS | ||
PRESUBMIT.py | ||
public.bzl | ||
README | ||
README.chromium | ||
RELEASE_NOTES.txt | ||
whitespace.txt |
Skia is a complete 2D graphic library for drawing Text, Geometries, and Images. See full details, and build instructions, at https://skia.org.