skia2/include/gpu
csmartdalton 28341fad84 Implement difference clip rects with window rectangles
Plumbs the pipeline for window rectangles and uses them for a very
basic implementation of difference clip rects. This puts a common
Blink pattern on fast path, but we will still eventually need to make
more comprehensive use of window rectangles during clipping.

GTX 960 perf result:
                              gpu                     glinst4                 glinst16
desk_jsfiddlebigcar.skp       0.254 -> 0.177 [70%]    0.279 -> 0.197 [71%]    0.577 -> 0.196 [34%]
keymobi_sfgate_com_.skp       0.697 -> 0.513 [74%]    0.766 -> 0.451 [59%]    0.769 -> 0.597 [78%]
keymobi_blogger.skp           0.406 -> 0.314 [77%]    0.436 -> 0.292 [67%]    0.696 -> 0.319 [46%]
desk_pokemonwiki.skp          0.121 -> 0.098 [81%]     0.13 -> 0.105 [81%]    0.216 -> 0.097 [45%]
desk_wikipedia.skp            0.121 -> 0.098 [81%]     0.13 -> 0.104 [80%]    0.199 -> 0.104 [52%]
keymobi_androidpolice_co...   0.443 -> 0.382 [86%]    0.447 -> 0.398 [89%]    0.444 -> 0.396 [89%]
keymobi_booking_com_sear...   1 .15 ->  1.03 [90%]     1.17 ->  1.06 [91%]     1.17 ->  1.05 [90%]
keymobi_theverge_com.skp      0.417 -> 0.396 [95%]    0.426 -> 0.405 [95%]    0.429 ->   0.4 [93%]

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

Review-Url: https://codereview.chromium.org/2251573002
2016-08-17 10:00:22 -07:00
..
effects sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
gl Default GR_GL_FUNCTION_TYPE to __stdcall on Windows. 2016-08-10 07:30:21 -07:00
vk Add gyp define to enable vulkan debug layers 2016-07-27 08:03:57 -07:00
GrBlend.h Create fragment processor for performing input color blend with child processor 2015-09-15 15:33:27 -07:00
GrBuffer.h Add resource provider flag to avoid client-side buffers 2016-07-13 10:16:32 -07:00
GrBufferAccess.h Abandon offset support with texel buffers 2016-06-03 08:50:54 -07:00
GrCaps.h Include EXT_window_rectangles API 2016-08-09 12:42:47 -07:00
GrClip.h Implement difference clip rects with window rectangles 2016-08-17 10:00:22 -07:00
GrColor.h GrColor4f is yet another 4f color type, unfortunately. 2016-06-24 12:50:19 -07:00
GrColorSpaceXform.h Simplify color space xform storage and usage (float[] vs. SkMatrix44) 2016-07-27 05:25:26 -07:00
GrConfig.h Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER. 2016-04-29 06:41:35 -07:00
GrContext.h Merge GrClipMaskManager into GrClipStackClip 2016-08-05 22:32:12 -07:00
GrContextOptions.h Add test configs for instanced rendering 2016-07-29 08:14:20 -07:00
GrCoordTransform.h some utils for rect and matrix 2015-03-13 06:08:28 -07:00
GrDrawContext.h Move GrAtlasTextContext to GrDrawingManager, so we only have one. 2016-08-11 12:17:32 -07:00
GrFragmentProcessor.h GrFP can express distance vector field req., program builder declares variable for it 2016-08-01 11:01:56 -07:00
GrGpuResource.h Refactor to separate backend object lifecycle and GpuResource budget decision 2016-04-22 01:48:29 -07:00
GrGpuResourceRef.h apply mozilla patch 2015-11-10 04:55:08 -08:00
GrInvariantOutput.h Added premulFourChannelColor to GrInvariantOutput 2016-07-14 09:02:18 -07:00
GrPaint.h Inline fast path for GrPaint::isConstantBlendedColor when no color FPs and src-over blend. 2016-08-11 07:39:33 -07:00
GrProcessor.h remove non-static uses of SkOncePtr 2016-05-02 07:19:41 -07:00
GrProcessorUnitTest.h sk_sp for Ganesh. 2016-06-09 08:01:03 -07:00
GrProgramElement.h Move SkTArray to include/private. 2016-02-17 13:13:44 -08:00
GrRenderTarget.h Add flag for window rectangles to GrRenderTarget 2016-08-10 11:09:07 -07:00
GrResourceKey.h Move off SK_SUPPORT_LEGACY_DATA_FACTORIES. 2016-08-02 14:40:46 -07:00
GrShaderVar.h Refactor how we store and use samplers in Ganesh 2016-04-20 07:09:46 -07:00
GrSurface.h Move prepareForExternalIO from GrRenderTarget to GrDrawContext 2016-07-26 07:41:01 -07:00
GrTestUtils.h Move GrNonAAFillRectPerspectiveBatch to its own file 2016-07-06 09:58:57 -07:00
GrTexture.h Better (?) interface for controlling sRGB-ness of mipmaps on GrTexture 2016-06-13 07:59:48 -07:00
GrTextureAccess.h Infer sampler precision from pixel config 2016-04-11 12:03:08 -07:00
GrTextureParams.h Remove sRGB overrides on GrTextureParams. Use GrPaint flags instead. 2016-05-24 06:18:48 -07:00
GrTextureProvider.h Remove some unnecessary #includes of SkImageFilter.h 2016-04-22 07:36:12 -07:00
GrTypes.h Add flag for window rectangles to GrRenderTarget 2016-08-10 11:09:07 -07:00
GrTypesPriv.h Convert GrAppliedClip interface to builder style 2016-08-15 11:17:19 -07:00
GrXferProcessor.h Remove hasMixedSamples() from GrPipelineBuilder 2016-05-06 09:41:16 -07:00
SkGr.h remove/deprecate SkBitmap::getTexture, as it now always returns false 2016-07-25 08:29:10 -07:00