Commit ba819aea authored by mtklein's avatar mtklein Committed by Commit bot

Try backing SkPicture with SkRecord in Chromium.

This is our first attempt, mostly to feel this out.  Performance and
correctness problems are both possible.  Please revert this if a benchmark even
smells funny.

That said, we've been working on this a while, are pretty confident it's good
stuff, and have had Skia's internal testing entirely switched over for a week.
Parts of Chromium that serialize and deserialize SkPictures are already
switched over.  This CL finishes things off by switching the default
recorded-from-scratch SkPicture to use SkRecord too.

BUG=408985,409110,409138

Committed: https://chromium.googlesource.com/chromium/src/+/f7450daaf38f4951b23fabaaaf659c6af33a705c

Committed: https://chromium.googlesource.com/chromium/src/+/5f2a6ab31313eb2fc6e456f65c3863a77d2d0c30

CQ_EXTRA_TRYBOTS=tryserver.blink:linux_blink_rel,linux_blink_dbg;tryserver.chromium.linux:linux_browser_asan

Committed: https://chromium.googlesource.com/chromium/src/+/130033d6c732af90ed117f05517e4efffd23ae58

Review URL: https://codereview.chromium.org/504823003

Cr-Commit-Position: refs/heads/master@{#293503}
parent d59769d8
......@@ -17,10 +17,6 @@
#ifndef SkUserConfig_DEFINED
#define SkUserConfig_DEFINED
// Turns SkPicture::clone() into a simple "return SkRef(this);" as a way to
// test the threadsafety of SkPicture playback.
#define SK_PICTURE_CLONE_NOOP 1
/* SkTypes.h, the root of the public header files, does the following trick:
#include <SkPreConfig.h>
......@@ -265,6 +261,13 @@ SK_API void SkDebugf_FileLine(const char* file, int line, bool fatal,
#define SK_SUPPORT_LEGACY_ALLOCPIXELS_BOOL
#endif
// Turns SkPicture::clone() into a simple "return SkRef(this);" as a way to
// test the threadsafety of SkPicture playback.
#define SK_PICTURE_CLONE_NOOP 1
// Turns on new (nicer, hopefully faster) SkPicture backend.
#define SK_PICTURE_USE_SK_RECORD 1
// ===== End Chrome-specific definitions =====
#endif
......@@ -48,4 +48,7 @@
#
# START OVERRIDES HERE
# SkRecord records translates as setMatrix, requiring an update to test expectations.
crbug.com/408985 inspector/layers/layer-canvas-log.html [ Failure Pass ]
# END OVERRIDES HERE (this line ensures that the file is newline-terminated)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment