skia2/gm
mtklein 7cdc1ee115 Add always-threaded SkRecord quilt tests.
Now that we're drawing tiles threaded like implside painting, remove the checks
that those lock counts are balanced.  They're just not right for anyone anymore.

SkBitmaps themselves are not threadsafe (even const ones), so shallow copy them
on playback of an SkRecord.  (The underlying SkPixelRefs are threadsafe.)

Simplify quilt drawing by using SkBitmap::extractSubset.  No need for locking.

Bump up to 256x256 tiles.  16x16 tiles just murders performance (way too much
contention).  This has the nice side effect of letting us enable a bunch more
GMs for quilt mode; they drew wrong with small tiles but exactly right with large.

BUG=171776
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/371023005
2014-07-07 10:41:04 -07:00
..
rebaseline_server rebaseline_server: handle column filtering more generically 2014-07-07 08:49:14 -07:00
tests add some .gitignores related to gm and tools 2014-04-11 14:49:50 +00:00
__init__.py rebaseline.py: if --tests is not specified, get test list from actual-results.json 2013-06-05 15:43:37 +00:00
aaclip.cpp Disable cgimage GM 2014-04-23 18:05:36 +00:00
aarectmodes.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
alphagradients.cpp Remove unused (by clients) SkUnitMapper 2014-05-22 12:27:41 +00:00
androidfallback.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
arcofzorro.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
arithmode.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
beziereffects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
bigblurs.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
bigmatrix.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
bigtext.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
bitmapcopy.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
bitmapfilters.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
bitmapmatrix.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
bitmappremul.cpp Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/) 2014-04-11 17:15:40 +00:00
bitmaprect.cpp using real tiles when simulating tiling 2014-05-30 15:06:24 +00:00
bitmaprecttest.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
bitmapscroll.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
bitmapshader.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
bitmapsource.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
bleed.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
blurcircles.cpp New GM for testing circle blur optimization 2014-05-07 17:50:03 +00:00
blurquickreject.cpp move common blur types into central header 2014-04-28 16:25:35 +00:00
blurrect.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
blurroundrect.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
blurs.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
circles.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
circularclips.cpp optimize circularclips to act as a bench, fix null-check bug in etcbench 2014-06-20 11:33:59 -07:00
clippedbitmapshaders.cpp Move SkShader::fLocalMatrix into SkShader constructor. 2014-04-28 14:55:39 +00:00
cmykjpeg.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
coloremoji.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
colorfilterimagefilter.cpp Factory methods for heap-allocated SkImageFilter objects. 2014-03-10 10:51:58 +00:00
colorfilters.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
colormatrix.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
colortype.cpp Remove unused (by clients) SkUnitMapper 2014-05-22 12:27:41 +00:00
complexclip2.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
complexclip.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
composeshader.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
conicpaths.cpp Sanitizing source files in Housekeeper-Nightly 2013-06-21 07:00:53 +00:00
convexpaths.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
convexpolyclip.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
convexpolyeffect.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
copyTo4444.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
cubicpaths.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
dashcubics.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
dashing.cpp Use vertex attributes for dash effect in gpu 2014-06-12 10:24:21 -07:00
degeneratesegments.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
deviceproperties.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
discard.cpp Fix int->scalar warning on windows 2014-04-24 21:23:37 +00:00
displacement.cpp use platform-independent font for gm 2014-06-23 11:25:00 -07:00
display_json_results.py gm_json.py: add ability to load JSON file from a string, not just a local file 2013-06-04 17:50:36 +00:00
distantclip.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
downsamplebitmap.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
drawbitmaprect.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
drawlooper.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
dropshadowimagefilter.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
drrect.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
emptypath.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
etc1bitmap.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
extractbitmap.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
factory.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
fatpathfill.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
filltypes.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
filltypespersp.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
filterbitmap.cpp Cleanup usage of GetResourcePath() after commit bcbc1788b4. 2014-07-01 12:35:49 -07:00
filterindiabox.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
fontcache.cpp Sanitizing source files in Housekeeper-Nightly 2013-10-10 07:01:40 +00:00
fontmgr.cpp Pass the IDWriteFactory instead of relying on a global creator. 2014-03-31 19:18:07 +00:00
fontscaler.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
gammatext.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
getpostextpath.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
giantbitmap.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
glyph_pos.cpp Revert of Revert of Fix SkPaint::measureText for stroked hairline text (https://codereview.chromium.org/354433002/) 2014-06-23 06:59:15 -07:00
gm_error.h Add SkPDFDeviceFlatenner which extends SkPDFDevice to add support to flatten the path and the text when we have perspective. 2013-10-14 13:42:12 +00:00
gm_expectations.cpp In Android framework, make tools depend on jsoncpp 2014-06-18 10:31:40 -07:00
gm_expectations.h In Android framework, make tools depend on jsoncpp 2014-06-18 10:31:40 -07:00
gm_json.py make compare_rendered_pictures process render_pictures's new JSON output format 2014-05-06 15:31:31 +00:00
gm.cpp Refactor how we handle resources path in Tests. 2014-06-18 14:32:49 -07:00
gm.h use platform-independent font for gm 2014-06-23 11:25:00 -07:00
gmmain.cpp Support using OpenGL ES context on desktop 2014-06-30 06:36:31 -07:00
gradient_matrix.cpp Remove unused (by clients) SkUnitMapper 2014-05-22 12:27:41 +00:00
gradientDirtyLaundry.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
gradients_2pt_conical.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
gradients_no_texture.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
gradients.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
gradtext.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
hairlines.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
hairmodes.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
hittestpath.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
image.cpp remove picture-backed surfaces 2014-04-11 18:34:35 +00:00
image.h check-point for image/surface work 2012-07-29 20:38:16 +00:00
imagealphathreshold.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imageblur.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imageblurtiled.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imagefiltersbase.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
imagefiltersclipped.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imagefilterscropexpand.cpp Sanitizing source files in Housekeeper-Nightly 2014-03-15 03:02:32 +00:00
imagefilterscropped.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
imagefiltersgraph.cpp Remove some unnecessary uses of SkOnce. 2014-05-27 16:28:43 +00:00
imagefiltersscaled.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imagemagnifier.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
imageresizetiled.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
internal_links.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
inversepaths.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
lcdtext.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
lerpmode.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
lighting.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
linepaths.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
lumafilter.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
matrixconvolution.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
matriximagefilter.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
megalooper.cpp move common blur types into central header 2014-04-28 16:25:35 +00:00
mixedxfermodes.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
modecolorfilters.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
morphology.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
nested.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
ninepatchstretch.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
nonclosedpaths.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
offsetimagefilter.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
optimizations.cpp Staging for cleanup of SkPicture-related headers 2014-04-18 18:04:41 +00:00
ovals.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
patheffects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
pathfill.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
pathinterior.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
pathopsinverse.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
pathopsskpclip.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
pathreverse.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
peekpixels.cpp Revert "Revert of add colortable support to imagegenerator (https://codereview.chromium.org/304443003/)" 2014-05-29 15:57:20 +00:00
perlinnoise.cpp Fix tiled perlin noise. 2014-06-12 11:24:20 -07:00
pictureimagefilter.cpp Staging for cleanup of SkPicture-related headers 2014-04-18 18:04:41 +00:00
pictureshader.cpp Remove setLocalMatrix calls from picture shader GM. 2014-05-02 21:23:52 +00:00
points.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
poly2poly.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
polygons.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
quadpaths.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
rects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
resizeimagefilter.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
roundrects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
rrect.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
rrects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
samplerstress.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
selftest.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
shaderbounds.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
shadertext2.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
shadertext3.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
shadertext.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
shadows.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
shallowgradient.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
simpleaaclip.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
skbug1719.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
spritebitmap.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
srcmode.cpp stop calling SkCanvas::getDevice 2014-06-30 09:05:34 -07:00
stringart.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
strokefill.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
strokerect.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
strokerects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
strokes.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
stroketext.cpp hide SkBitmap::setConfig 2014-06-09 19:52:07 -07:00
system_preferences_default.cpp Set LCD font smoothing to "medium" for gm on Mac, regardless of system settings 2012-02-14 14:53:59 +00:00
system_preferences_mac.mm gm: Include system_preferences.h in mac file. 2012-09-26 15:41:42 +00:00
system_preferences.h Set LCD font smoothing to "medium" for gm on Mac, regardless of system settings 2012-02-14 14:53:59 +00:00
tablecolorfilter.cpp add legacy/helper allocN32Pixels, and convert gm to use it 2014-01-25 16:46:20 +00:00
techtalk1.cpp Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
testimagefilters.cpp Turn on quilt mode in DM. 2014-04-30 13:20:45 +00:00
texdata.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
texteffects.cpp move common blur types into central header 2014-04-28 16:25:35 +00:00
texturedomaineffect.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
thinrects.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
thinstrokedrects.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
tileimagefilter.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
tilemodes_scaled.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
tilemodes.cpp Remove unused (by clients) SkUnitMapper 2014-05-22 12:27:41 +00:00
tinybitmap.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
twopointradial.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
typeface.cpp fix more 64bit warnings 2014-01-27 13:42:58 +00:00
variedtext.cpp GM/bench for text draws with various parameters and clip rects. 2014-06-09 15:11:30 -07:00
vertices.cpp new vertices gm to test alpha 2014-05-05 20:41:21 +00:00
verttext2.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
verttext.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
verylargebitmap.cpp Add always-threaded SkRecord quilt tests. 2014-07-07 10:41:04 -07:00
xfermodeimagefilter.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
xfermodes2.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00
xfermodes3.cpp stop calling SkCanvas::getDevice 2014-06-30 09:05:34 -07:00
xfermodes.cpp Cleanup: Get rid of make_isize() function from gm.h. 2014-06-09 23:59:03 -07:00