skia2/include/core
commit-bot@chromium.org cae5d8d570 Start from scratch on a faster SkFlatDictionary.
This is like codereview.chromium.org/19276003, except it fits in better with the existing code, doesn't leak memory, and because it's back using SkChunkFlatController it's a little faster too, now a win across the board:

Slowdown	bench
-1.59%	desk_youtubetvbrowse.skp
-2.56%	desk_googlehome.skp
-6.40%	tabl_androidpolice.skp
-6.45%	desk_youtubetvvideo.skp
-6.91%	tabl_googlecalendar.skp
...
-29.70%	desk_yahoogames.skp
-32.17%	desk_googlespreadsheet.skp
-32.23%	mobi_wikipedia.skp
-37.16%	desk_chalkboard.skp
-41.57%	desk_pokemonwiki.skp
Overall slowdown: -22.74%

running bench [640 480] picture_record_recurring_paint_dictionary  NONRENDERING: cmsecs =   9.92
running bench [640 480] picture_record_unique_paint_dictionary  NONRENDERING: cmsecs =  22.16
running bench [640 480]  picture_record_dictionaries  NONRENDERING: cmsecs =   9.18

BUG=
R=tomhudson@google.com, reed@google.com, scroggo@google.com

Author: mtklein@google.com

Review URL: https://chromiumcodereview.appspot.com/19564007

git-svn-id: http://skia.googlecode.com/svn/trunk@10328 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-24 18:45:27 +00:00
..
Sk64.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkAdvancedTypefaceMetrics.h [PDF] Always set the symbolic Flag for Fonts. 2013-03-13 20:01:51 +00:00
SkAnnotation.h PDF: add support for named destinations. 2013-03-08 09:09:10 +00:00
SkBitmap.h Sanitizing source files in Housekeeper-Nightly 2013-07-20 07:00:58 +00:00
SkBlitRow.h remove dst/rendertarget support for kARGB_4444_Config 2013-06-21 18:30:53 +00:00
SkBounder.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkCanvas.h Sanitizing source files in Housekeeper-Nightly 2013-05-30 07:01:29 +00:00
SkChecksum.h Add SkChecksum::Murmur3. 2013-07-23 20:25:34 +00:00
SkChunkAlloc.h combine glyph and image bulk alloc, and adjust initial alloc size, to reduce total waste from 50% to 30% 2013-06-19 19:25:36 +00:00
SkClipStack.h Compact the clipstack for kReplace_Op'd geometry 2013-06-11 11:01:48 +00:00
SkColor.h SkAlpha constant defs 2013-07-19 17:43:27 +00:00
SkColorFilter.h Add printing of SkColorFilter-derived classes to debugger 2013-05-23 14:00:17 +00:00
SkColorPriv.h ARM Skia NEON patches - 01 - Simple fixes 2013-07-15 13:10:31 +00:00
SkColorShader.h Added print out of SkShader information to debugger 2013-01-15 20:17:47 +00:00
SkColorTable.h Implement multi-threaded picture playback via cloning. 2012-08-29 18:52:07 +00:00
SkComposeShader.h Added print out of SkShader information to debugger 2013-01-15 20:17:47 +00:00
SkData.h Sanitizing source files in Housekeeper-Nightly 2013-06-11 07:01:17 +00:00
SkDataSet.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkDataTable.h specialize SkDataTable for arrays where all elements are the same size. 2013-04-21 01:37:46 +00:00
SkDeque.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkDevice.h Change undefined SkGpuRenderTarget and SkGpuTexture forward declares to GrRenderTarget and GrTexture. 2013-06-26 19:18:23 +00:00
SkDeviceProperties.h Mask orientation and layout correctly. 2013-05-06 22:23:08 +00:00
SkDither.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkDocument.h The two leaks are: 2013-07-11 22:29:29 +00:00
SkDraw.h Sanitizing source files in Housekeeper-Nightly 2013-06-05 07:01:06 +00:00
SkDrawFilter.h Add GPU support for roundrects 2013-04-25 15:27:00 +00:00
SkDrawLooper.h Added toString to SkDrawLooper-derived classes 2013-01-28 20:21:59 +00:00
SkEmptyShader.h Added print out of SkShader information to debugger 2013-01-15 20:17:47 +00:00
SkEndian.h SkBitmapHasher: use 64-bit-truncated MD5 instead of 64-bit CityHash 2013-05-03 17:35:39 +00:00
SkError.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-09 07:01:27 +00:00
SkFixed.h Add bench to test float to fixed conversion 2013-07-18 19:11:30 +00:00
SkFlate.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkFlattenable.h Make flattenables no longer depend on global static initializers. 2012-09-21 17:54:46 +00:00
SkFlattenableBuffers.h Add buffer helper to read directly into SkString to avoid extra copying 2013-05-21 16:17:14 +00:00
SkFloatBits.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkFloatingPoint.h path ops -- use standard max, min, double-is-nan 2013-04-23 11:56:44 +00:00
SkFontHost.h remove SkFontHost::NextLogicalFont, and add android-specific function 2013-03-26 12:29:05 +00:00
SkFontLCDConfig.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-03-13 07:01:04 +00:00
SkGeometry.h Add implicit hairline conic rendering to GPU 2013-07-12 20:15:34 +00:00
SkGraphics.h add scaledimagecache 2013-07-23 19:13:54 +00:00
SkImage.h Sanitizing source files in Housekeeper-Nightly 2013-07-24 07:01:12 +00:00
SkImageDecoder.h Allow decoding JPEG into A8. 2013-07-18 19:34:49 +00:00
SkImageEncoder.h Separate core and images project. 2013-05-31 14:00:10 +00:00
SkImageFilter.h Reverting r10251 (Implement crop rect for SkImageFilter) due to Chromium-side unit test failures 2013-07-24 13:18:06 +00:00
SkImageFilterUtils.h Implement offset for GPU filter path. Although we can't yet use this in Blink for FEOffset, due to SVG semantics, we can use it to support crop rect (upcoming patch). 2013-07-10 21:22:18 +00:00
SkImageTypes.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-02-20 07:02:30 +00:00
SkInstCnt.h Removed unused parameters 2013-03-11 18:50:03 +00:00
SkLineClipper.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkMallocPixelRef.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkMask.h Sanitizing source files in Housekeeper-Nightly 2013-05-03 07:01:00 +00:00
SkMaskFilter.h Sanitizing source files in Housekeeper-Nightly 2013-07-04 07:01:07 +00:00
SkMath.h reenable __builtin_clz for GNUC (and clang), recognizing that it is undefined for a zero argument, 2013-04-29 15:34:35 +00:00
SkMatrix.h First pass at Rect Effect 2013-04-09 14:01:44 +00:00
SkMetaData.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkOSFile.h Fix bug in setting directories for tests. 2013-06-06 14:59:56 +00:00
SkPackBits.h Automatic update of all copyright notices to reflect new license terms. 2011-07-28 14:26:00 +00:00
SkPaint.h stop using bitmap-filter flags outside of paint itself, as a step towards really changing them into an enum 2013-07-22 17:18:18 +00:00
SkPaintOptionsAndroid.h Android specific changes that are upstreamed from the android framework. 2013-05-24 20:31:57 +00:00
SkPath.h Remove SK_DEBUG_PATH_REF 2013-06-27 18:39:39 +00:00
SkPathEffect.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkPathMeasure.h add SK_API 2013-05-08 13:25:02 +00:00
SkPicture.h Revert "Temporary change to keep chrome happy." 2013-07-08 18:40:42 +00:00
SkPixelRef.h Change undefined SkGpuRenderTarget and SkGpuTexture forward declares to GrRenderTarget and GrTexture. 2013-06-26 19:18:23 +00:00
SkPoint.h add asScalars() to document when we want to treat SkPoint or SkRect as an array 2013-03-08 16:07:54 +00:00
SkPostConfig.h Make SK_OVERRIDE expand to OVERRIDE on iOS 2013-07-03 08:39:46 +00:00
SkPreConfig.h reland 8200 w/ fix for android (use fullpath instead of path) 2013-03-18 21:08:46 +00:00
SkRasterizer.h change all interfaces for SkRasterizer to const, in preparation for marking it 2012-12-18 16:57:03 +00:00
SkReader32.h revert 6766, thereby re-landing 6762-6763 now that the bots are ready 2012-12-12 20:48:18 +00:00
SkRect.h Reverting r10251 (Implement crop rect for SkImageFilter) due to Chromium-side unit test failures 2013-07-24 13:18:06 +00:00
SkRefCnt.h Add a 'unique' method to SkRefCnt, document the usage, and add support. 2013-07-19 23:18:52 +00:00
SkRegion.h Add getRectCount to SkRegtion 2013-07-17 21:39:28 +00:00
SkRRect.h Added "SkRRect::contains(const SkRect&) const" 2013-04-25 12:23:00 +00:00
SkScalar.h remove outdated debugging code now that we no longer support fixed point 2013-05-23 16:41:42 +00:00
SkScalarCompare.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkShader.h Add flag to gradients to interpolate colors in premul space. Experimental API to encapsulate the shared parameters for all gradients into a struct. 2013-05-24 14:58:44 +00:00
SkSize.h must always include another skia header (unless you're SkTypes.h). In this case, 2012-11-26 20:18:00 +00:00
SkStream.h Add a detachAsStream to SkDynamicMemoryWStream. 2013-07-19 22:32:11 +00:00
SkString.h fix https://code.google.com/p/skia/issues/detail?id=1356 2013-06-19 18:52:42 +00:00
SkStringUtils.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-29 07:05:52 +00:00
SkStrokeRec.h Follow up on the previous patch : 2012-12-17 21:16:45 +00:00
SkSurface.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-23 07:01:29 +00:00
SkTArray.h Sanitizing source files in Housekeeper-Nightly 2013-06-15 07:00:53 +00:00
SkTDArray.h fix copy in SkTDArray 2013-07-01 17:04:32 +00:00
SkTDict.h Make SkTDArray accessors const-friendly. 2013-02-28 19:03:13 +00:00
SkTDStack.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTemplates.h Fix leak in SkAutoSTArray 2013-07-12 18:44:23 +00:00
SkThread_platform.h explicitly initialize all entries in array of SkBaseMatrix, since we can't say 2013-04-12 15:34:53 +00:00
SkThread.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkTileGridPicture.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-03-01 12:12:55 +00:00
SkTime.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTInternalLList.h Fix compiler error in SkTInternalList.h 2012-12-03 23:34:32 +00:00
SkTLazy.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-04-02 07:01:34 +00:00
SkTrace.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTRegistry.h Update files to use SK_BUILD_FOR_ANDROID. 2011-11-08 19:00:26 +00:00
SkTScopedPtr.h Automatic update of all copyright notices to reflect new license terms. 2011-07-28 14:26:00 +00:00
SkTSearch.h One SkTSearch to rule them all. Allow key to be of different type than the array. 2013-05-17 19:05:03 +00:00
SkTypeface.h Implement onCountGlyphs and onGetUPEM on Windows. 2013-07-15 19:42:57 +00:00
SkTypes.h Fix some noisy warnings on Windows x64. 2013-07-19 22:30:11 +00:00
SkUnitMapper.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkUnPreMultiply.h Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/) 2012-08-23 18:09:54 +00:00
SkUtils.h Fix a few clang errors while trying to build tools target. 2013-03-26 21:48:58 +00:00
SkWeakRefCnt.h more SkInstCnt plumbing 2012-06-26 17:55:30 +00:00
SkWriter32.h Start from scratch on a faster SkFlatDictionary. 2013-07-24 18:45:27 +00:00
SkXfermode.h remove dst/rendertarget support for kARGB_4444_Config 2013-06-21 18:30:53 +00:00