skia2/include
commit-bot@chromium.org 19382421b9 Convert SkWriter32 to use an SkTDArray for its internal storage.
This reduces the allocation overhead of a null picture (create, beginRecording(), endRecording) from about 18K to about 1.9K.  (There's still lots more to prune.)

SkPictureFlat can exploit the fact that Writer32 is contiguous simplify its memory management.  The Writer32 itself becomes the scratch buffer.

Remove lots and lots of arbitrary magic numbers that were size guesses and minimum allocation sizes.  Keep your eyes open for the big obvious DUH why we save 16K per picture!  (Spoiler alert.  It's because that first save we issue in beginRecording() forces the old SkWriter32 to allocate 16K.)

Tests passing, DM passing.

bench --match writer: ~20% faster
null bench_record: ~30% faster
bench_record on buildbot .skps: ~3-6% slower, ranging 25% faster to 20% slower
bench_pictures on buildbot .skps: ~1-2% faster, ranging 13% faster to 28% slower

BUG=skia:1850
R=reed@google.com

Author: mtklein@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@13073 2bbb7eff-a529-9590-31e7-b0007b416f81
2014-01-14 20:51:26 +00:00
..
animator Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
config Revert "Revert "begin to remove SkLONGLONG and wean Skia off of Sk64"" 2013-12-20 14:24:21 +00:00
core Convert SkWriter32 to use an SkTDArray for its internal storage. 2014-01-14 20:51:26 +00:00
device/xps Override drawRRect in fake SkBitmapDevices. 2013-11-12 17:10:02 +00:00
effects Add AlphaThreshold filter. 2014-01-06 23:41:14 +00:00
gpu Handle drawBitmapRect src_rect->dst_rect mapping as a local matrix rather than view matrix when there is a mask filter. 2014-01-13 14:47:00 +00:00
images Revert "Revert "Revert "Revert of https://codereview.chromium.org/110593003/""" 2014-01-06 17:08:27 +00:00
pathops Export SkPathOps.h functions for external use. 2013-07-09 19:43:35 +00:00
pdf Revert "[PDF] Fix font embedding restrictions." 2013-12-10 17:22:41 +00:00
pipe Fixes for piping bitmaps with encoded data. 2013-04-30 02:32:41 +00:00
ports Android now uses Harfbuzz-NG. No need to keep code specific to the old version of Harfbuzz around! 2013-12-18 19:49:27 +00:00
svg Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
text Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
utils Pull in Chromium's version of GatherPixelRefs 2014-01-13 13:33:26 +00:00
views Support MSAA4 and (non-ES) OpenGL in Android SampleApp 2013-12-10 20:37:41 +00:00
xml Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00