skia2/gyp
csmartdalton bf4a8f90c8 Improve usage of window rectangles
* Skips non-AA diff rect elements and replaces them with window
  rectangles.
* Places window rectangles in the interiors of antialiased diff rects.
* Arranges two overlapping window rectangles in a plus shape inside of
  diff rounded rects.
* Enables window rectangles when clearing and generating clip masks.

GTX 960 perf result (with vs. without window rectangles):

                              glinst4                msaa16                 gpu
keymobi_pinterest.skp         0.48 -> 0.17 [ 35%]    2.77 -> 1.49 [ 54%]    0.22 -> 0.16 [ 70%]
keymobi_digg_com.skp          0.42 -> 0.23 [ 55%]    2.34 -> 1.08 [ 46%]    0.25 -> 0.21 [ 83%]
desk_jsfiddlebigcar.skp       0.28 -> 0.16 [ 59%]    1.70 -> 0.96 [ 57%]    0.19 -> 0.14 [ 70%]
top25desk_wordpress.skp       0.45 -> 0.18 [ 40%]    2.78 -> 1.53 [ 55%]    0.21 -> 0.19 [ 94%]
top25desk_weather_com.skp     2.01 -> 1.93 [ 96%]    23.5 -> 2.54 [ 11%]    1.90 -> 1.68 [ 88%]
keymobi_blogger.skp           0.57 -> 0.37 [ 65%]    2.87 -> 1.54 [ 54%]    0.43 -> 0.33 [ 77%]
keymobi_linkedin.skp          0.32 -> 0.17 [ 51%]    1.93 -> 1.04 [ 54%]    0.17 -> 0.15 [ 91%]
keymobi_bing_com_search_...   0.29 -> 0.25 [ 83%]    1.85 -> 1.23 [ 66%]    0.50 -> 0.24 [ 48%]
keymobi_theverge_com_201...   1.00 -> 0.67 [ 68%]    9.46 -> 3.84 [ 41%]    0.72 -> 0.65 [ 90%]
keymobi_sfgate_com_.skp       1.56 -> 1.13 [ 72%]    4.49 -> 2.86 [ 64%]    1.54 -> 1.11 [ 72%]
...
GEOMEAN (All 79 blink skps)   1.04 -> 0.90 [ 86%]    4.22 -> 2.81 [ 67%]    0.95 -> 0.89 [ 94%]

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2289363005

Committed: https://skia.googlesource.com/skia/+/db42be9a326c747ff92ed1da8c3536c5b3e8e22b
Review-Url: https://codereview.chromium.org/2289363005
2016-09-06 10:01:07 -07:00
..
android_deps.gyp Expat target exports includes instead of FreeType. 2016-08-26 12:15:54 -07:00
android_framework_lib.gyp Move SkBitmapRegionDecoder to include/android and src/android 2015-11-13 06:11:09 -08:00
android_output.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
android_system.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
angle.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
animator.gyp Rename textual includes as *.inc. 2016-07-27 11:12:12 -07:00
apptype_console.gypi Remove all code related to NaCl 2015-04-02 12:16:36 -07:00
bench.gyp Build LSAN suppressions into the test binaries. 2016-09-01 07:06:54 -07:00
bench.gypi GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
canvas_state_lib.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
codec_android.gyp Delete SkBitmapRegionCanvas 2016-05-18 06:23:57 -07:00
codec.gyp Assume all TURBO_HAS_* are true. 2016-08-23 11:49:29 -07:00
common_conditions.gypi Detect TSAN instead of relying on #ifdef THREAD_SANITIZER. 2016-08-30 10:45:17 -07:00
common_variables.gypi Fix angle build on Ubuntu 2016-08-26 12:33:58 -07:00
common.gypi Default fake gamma to sRGB. 2016-08-01 09:22:12 -07:00
core.gyp Delete ChromeOS code 2016-04-29 14:01:34 -07:00
core.gypi Made shadows blurry (thru implementing variance mapping) 2016-08-25 06:30:23 -07:00
debugger.gyp Fix png encoding in skia debugger 2016-06-30 10:06:51 -07:00
dm.gyp Use a statically linked libhwui for testing. 2016-02-16 09:19:36 -08:00
dm.gypi Build LSAN suppressions into the test binaries. 2016-09-01 07:06:54 -07:00
dng_sdk.gyp Extend __mulodi4() hack to 32-bit x86. 2016-07-27 05:35:28 -07:00
effects.gyp Add SkGammaColorFilter 2016-07-28 09:20:33 -07:00
effects.gypi Moving SkBlurImageFilter into core 2016-08-23 11:13:14 -07:00
etc1.gyp Revert of Depend on ETC1 via DEPS instead of a direct third_party checkin. (patchset #1 id:1 of https://codereview.chromium.org/1296253003/ ) 2015-08-17 11:15:00 -07:00
everything.gyp hacking on a single-benchmark tool 2016-07-11 11:27:30 -07:00
example.gyp Create a standalone example for using Skia with SDL 2015-11-13 11:22:19 -08:00
expat.gyp Speculatively fix Android automerger 2016-07-15 14:18:49 -07:00
experimental.gyp experimental/tools/coreGraphicsPdf2png: remove skia dependency 2016-05-05 11:17:08 -07:00
FileReaderApp.gyp remove SkGPipe 2016-01-08 06:30:14 -08:00
find.py Add executable bit and shebang to python files 2016-08-18 04:36:25 -07:00
flags.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
freetype.gyp Expat target exports includes instead of FreeType. 2016-08-26 12:15:54 -07:00
freetype.gypi Update Android FreeType version. 2015-10-27 08:39:39 -07:00
fuzz.gyp GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
giflib.gyp Update giflib to 5.1.1 (AOSP hash) 2015-08-24 12:00:15 -07:00
gmslides.gypi GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
gpu.gyp Update Windows build to use VULKAN_SDK rather than VK_SDK_PATH 2016-09-06 08:40:51 -07:00
gpu.gypi Improve usage of window rectangles 2016-09-06 10:01:07 -07:00
gputest.gyp GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
harfbuzz.gyp GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
icu.gyp GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
images.gyp Add test for platform encoders, turn off platform encoders by default 2016-08-16 15:11:24 -07:00
iOSShell.gyp Remove custom bundle ID for iOS 2016-05-20 11:20:38 -07:00
jsoncpp.gyp Roll jsoncpp, drop dependency on Chromium overrides. 2014-08-19 07:21:00 -07:00
ktx.gyp add -Iinclude/private anywhere we have -Isrc/core 2015-07-28 08:55:14 -07:00
libjpeg-turbo-selector.gyp Remove dependencies on Android's forked decoder libraries 2015-11-06 11:15:49 -08:00
libjpeg-turbo.gyp Make the yasm copy target be type 'none' rather than type 'executable' 2016-07-27 12:07:43 -07:00
libpng.gyp Check libpng directly into third_party/ 2016-06-02 12:59:59 -07:00
libwebp_skia.gypi Comments Style: s/skbug.com/bug.skia.org/ 2015-11-07 05:29:00 -08:00
libwebp.gyp Update libwebp to version 0.5.0 2016-01-22 06:58:27 -08:00
lua.gyp gyp: clean up warnings with clang-3.8 2016-05-23 14:02:54 -07:00
microhttpd.gyp gyp (third_party) warning changes for ccache 2016-05-20 10:36:50 -07:00
most.gyp cleanup dead nanomsg and build_overrides 2016-08-27 06:50:11 -07:00
opts.gyp Step 1 of opts_crc32 rollout. 2016-08-19 08:07:51 -07:00
opts.gypi Use ARMv8 CRC32 instructions for SkOpts::hash(). 2016-08-22 08:53:45 -07:00
pathops_skpclip.gyp remove SkGPipe 2016-01-08 06:30:14 -08:00
pathops_unittest.gyp Move SkGLContext and some GrGLInterface implementations to skgputest module 2016-03-30 18:56:20 -07:00
pathops_unittest.gypi More conic-specific tests revealed a few conic-specific bugs. Because javascript / canvas make visualizing conics tricky, new native tools are required. 2015-10-30 12:03:06 -07:00
pdf.gyp SkPDF: Stop #include PREPROCESSOR_DEFINE pattern 2016-08-25 09:07:02 -07:00
pdf.gypi SkPDF: pull out SkPDFMakeCIDGlyphWidthsArray.cpp 2016-08-17 07:57:27 -07:00
piex.gyp msan: define BREAK_IF_DEBUGGING_AND_OUT_OF_RANGE in piex 2016-02-08 09:35:05 -08:00
ports.gyp Rename FontConfigInterface font manager files. 2016-08-02 07:07:33 -07:00
qcms.gyp Create SkColorSpaceXform to handle color conversions 2016-06-01 14:47:18 -07:00
SampleApp.gyp Making a sample for shadow maps for more intensive development 2016-08-05 07:55:01 -07:00
samples.gypi Interactive Bevel Sample App 2016-08-18 08:55:48 -07:00
sdl.gyp Initial gyp files for SDL 2015-10-29 07:09:53 -07:00
sfnt.gyp Remove SkPreprocessorSeq.h and SkTypedEnum.h. 2016-08-16 12:27:49 -07:00
sfntly.gyp SkPDF: Stop #include PREPROCESSOR_DEFINE pattern 2016-08-25 09:07:02 -07:00
shaderc.gyp Correctly handle mat2x2 in Vulkan 2016-07-07 08:04:08 -07:00
SimpleCocoaApp.gyp Allows windowed apps to be built on the Mac just by writing a SkOSWindow subclass without needing nib/plist files. 2015-06-18 11:49:42 -07:00
SimpleiOSApp.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
skia_for_android_framework_defines.gypi add legacy flag 2016-08-11 05:21:41 -07:00
skia_for_chromium_defines.gypi Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
skia_launcher.gyp Add copyright headers to remaining gyp files. 2015-03-25 10:22:41 -07:00
skia_lib.gyp Move SkBitmapRegionDecoder to include/android and src/android 2015-11-13 06:11:09 -08:00
skiaserve.gyp GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
sksl.gyp Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
sksl.gypi Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
skslc.gyp Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
svg.gyp Reland: Experimental parsing expression grammar (PEG) template library 2016-08-25 08:44:35 -07:00
tests.gypi GN: get echo-headers sources via exec_script 2016-08-02 14:28:26 -07:00
tools.gyp SkShaper: optionally disable harfbuzz 2016-08-03 10:43:55 -07:00
utils.gyp Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
utils.gypi Revert of Move uils and sksl to a common sources GYP file. (patchset #1 id:1 of https://codereview.chromium.org/2302723005/ ) 2016-09-06 07:07:52 -07:00
v8.gyp Allows windowed apps to be built on the Mac just by writing a SkOSWindow subclass without needing nib/plist files. 2015-06-18 11:49:42 -07:00
viewer.gyp Get Mac viewer working with SDL 2016-08-04 12:30:31 -07:00
views.gyp Delete ChromeOS code 2016-04-29 14:01:34 -07:00
xml.gyp Delete SkXMLPullParser 2016-07-19 05:14:41 -07:00
xps.gyp SkXPS: clean up SkConstexprMath 2016-05-31 11:23:42 -07:00
yasm.gyp followups 2016-02-12 12:58:10 -08:00
zlib.gyp gyp: supress more warnings for zlib 2016-05-24 05:23:52 -07:00