Go to file
Chris Dalton 981e4a756c Avoid recursion for (most) stroke tessellation patches
Adds quick accepts to the switch statement in
GrStrokeHardwareTessellator::prepare() that allow us to write out most
tessellation patches immediately. This avoids making function calls
into recursive methods as well as avoiding some of their checks that
aren't necessary the first time around.

Also adds a microbench that mimics the MotionMark "paths" benchmark
and measures our CPU-side prepare() time.

This shaves up to 30% off the microbenchmarks.

Bug: chromium:1172543
Change-Id: Idc93bebb79db9898a4ec241b1f6c8b9eb9ba7da3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/372602
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-02-22 21:37:26 +00:00
animations
bazel bazel baby steps 2020-09-14 15:18:32 +00:00
bench Avoid recursion for (most) stroke tessellation patches 2021-02-22 21:37:26 +00:00
bin pull arm64 binary on arm64 Mac/Linux 2021-01-15 19:00:46 +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] Remove references to particles.skia.org from demos 2021-02-18 19:00:44 +00:00
dm Run the Programs unit test on all rendering backends 2021-02-18 17:40:58 +00:00
docker [docker] Fix build by pointing to correct path 2021-01-22 17:34:56 +00:00
docs/examples Guard legacy matrixtransforms, and expose new one 2021-02-01 22:10:39 +00:00
example Reland "Remove use of legacy display globals." 2020-10-05 19:13:58 +00:00
experimental Split :tests into :test and :tests. 2021-02-18 17:01:23 +00:00
fuzz Support global variables in pipeline stage generator 2021-02-18 00:54:49 +00:00
gm Reland "Remove (unused) gpuType from SkRuntimeEffect::Uniform" 2021-02-19 17:53:47 +00:00
gn Add SkReadPixelsRec.h & SkImage_Base.h to core.gni 2021-02-22 21:27:26 +00:00
include Reland "Remove ARC from tools lib." 2021-02-22 17:55:52 +00:00
infra [infra] Tweak CasSpecs to support other repos which use gen_tasks_logic 2021-02-22 18:00:56 +00:00
modules Reland "Reland "Test mac system font variations."" 2021-02-22 18:48:49 +00:00
platform_tools [SkottieView] handle calls to setSource after first animation initialization 2021-01-21 23:41:28 +00:00
resources Demonstrate a bug with inlined static switches. 2021-02-22 15:05:58 +00:00
samplecode Rename GrPathStencilFillOp -> GrTessellatingStencilFillOp 2021-01-28 13:51:17 +00:00
site Replace 'dogben' with 'brianosman' in client code search page 2021-02-10 18:04:12 +00:00
specs Fix CanvasKit generated documentation to work with emscripten 1.39.16. 2020-05-27 12:23:32 +00:00
src Avoid recursion for (most) stroke tessellation patches 2021-02-22 21:37:26 +00:00
tests Delete GrSTArenaList 2021-02-22 20:56:27 +00:00
third_party NEON libjpeg-turbo on iOS and Mac 2021-02-02 22:07:54 +00:00
tools Reland "Remove ARC from tools lib." 2021-02-22 17:55:52 +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 Update gitignore for goma win_toolchain 2021-02-01 17:25:52 +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 "Reland "Test mac system font variations."" 2021-02-22 18:48:49 +00:00
codereview.settings
CONTRIBUTING
CQ_COMMITTERS
DEPS Roll ANGLE from d3d30921fc4c to 2be246927811 (9 revisions) 2021-02-22 07:51:59 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files 2021-02-02 23:41:54 +00:00
go.mod Update go.skia.org/infra in go.mod/go.sum 2020-12-21 20:31:07 +00:00
go.sum Update go.skia.org/infra in go.mod/go.sum 2020-12-21 20:31:07 +00:00
LICENSE
PRESUBMIT.py Reland "[infra] Switch from isolate to RBE-CAS" 2021-02-22 14:41:06 +00:00
public.bzl Reland "Reland "Test mac system font variations."" 2021-02-22 18:48:49 +00:00
README
README.chromium
RELEASE_NOTES.txt Reland "Remove ARC from tools lib." 2021-02-22 17:55:52 +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.