skia2/include/core
mtklein e35268ef4c Send SkPicture deletion message lazily.
If no one has read the picture's unique ID, there's no point invalidating it.

This is the same trick we pull with SkPixelRefs.

Before:
  26M	1	1.49µs	1.6µs	1.77µs	6.25µs	42%	picture_overhead_draw
  13M	32	742ns	749ns	756ns	823ns	2%	picture_overhead_nodraw

After:
  26M	1	1.27µs	1.33µs	1.49µs	5.51µs	45%	picture_overhead_draw
  14M	43	677ns	680ns	681ns	701ns	1%	picture_overhead_nodraw

BUG=skia:

Review URL: https://codereview.chromium.org/1061283002
2015-04-07 06:34:05 -07:00
..
SkAdvancedTypefaceMetrics.h Remove SkFontHost includes and friends. 2015-02-23 08:25:00 -08:00
SkAnnotation.h Factory methods for heap-allocated SkAnnotation objects. 2014-02-27 11:47:36 +00:00
SkAtomics.h Extract the spinlock from SkOnce as SkSpinlock. 2015-03-30 08:13:34 -07:00
SkBBHFactory.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkBitmap.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkBitmapDevice.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkBlitRow.h Clean up ColorRectProc plumbing. 2015-02-25 12:52:57 -08:00
SkBlurTypes.h move common blur types into central header 2014-04-28 16:25:35 +00:00
SkCanvas.h reduce alloc overhead for SkCanvas 2015-04-07 04:40:48 -07:00
SkChunkAlloc.h Add rewind capability to SkChunkAlloc 2015-02-27 08:31:57 -08:00
SkClipStack.h Clean up clipping code a bit 2015-02-10 08:16:55 -08:00
SkColor.h SkAlpha constant defs 2013-07-19 17:43:27 +00:00
SkColorFilter.h Revert of Revert of remove colorfilter native-565 support. complicating w/ no real value. (patchset #1 id:1 of https://codereview.chromium.org/1022673007/) 2015-03-24 06:35:23 -07:00
SkColorPriv.h Replace SSE optimization of Color32A_D565 2015-03-20 09:20:46 -07:00
SkColorTable.h Add comment describing SkColorTable constructor. 2015-03-18 08:00:27 -07:00
SkComposeShader.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkData.h Stop overloading internal_dispose in SkTextBlob and SkData 2014-11-20 08:02:46 -08:00
SkDataTable.h Remove SkDataTable from SkFlattenable hierarchy. 2013-10-15 20:39:57 +00:00
SkDeque.h This CL addresses "SkCanvas::save flags are not respected by GPU backend" (https://code.google.com/p/skia/issues/detail?id=1503). 2013-08-16 00:53:34 +00:00
SkDevice.h remove legacy onCreateCompatibleDevice 2015-03-14 17:51:34 -07: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 XPS, DM: add SkDocument::CreateXPS 2015-03-03 09:13:09 -08:00
SkDraw.h use common impl for drawTextOnPath 2015-02-17 10:33:54 -08:00
SkDrawable.h Rename SkCanvasDrawable to SkDrawable, and make public 2015-02-06 08:36:15 -08:00
SkDrawFilter.h Revert of Add image as a draw type that can be filtered (patchset #4 id:60001 of https://codereview.chromium.org/960783003/) 2015-03-05 06:33:54 -08:00
SkDrawLooper.h SkDrawLooper: No need for virtual bounds computation methods. 2014-12-01 13:03:22 -08:00
SkDrawPictureCallback.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkEndian.h fix size_t/int warnings 2014-04-23 19:19:44 +00:00
SkError.h Sanitizing source files in Housekeeper-Nightly 2013-09-05 07:01:19 +00:00
SkFilterQuality.h add newImage API 2015-01-23 05:58:07 -08:00
SkFixed.h Revert of replace SkFixedDiv impl with native 64bit math (patchset #2 id:20001 of https://codereview.chromium.org/1022543003/) 2015-03-19 04:10:42 -07:00
SkFlattenable.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkFlattenableSerialization.h Removed unnecessary define 2013-11-08 15:24:12 +00:00
SkFloatBits.h remove unused SkIntToFloatCast_NoOverflowCheck 2014-08-19 07:39:41 -07:00
SkFloatingPoint.h use log2(scale) to compute mip level 2015-01-16 08:35:09 -08:00
SkFont.h Treat embedded bitmaps as a hinting method. 2014-08-19 13:18:58 -07:00
SkFontHost.h Remove a layer of indirection and code from SkFontHost. 2014-09-10 15:49:48 -07:00
SkFontLCDConfig.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-03-13 07:01:04 +00:00
SkFontStyle.h Replace SkTypeface::Style with SkFontStyle. 2014-10-20 13:33:19 -07:00
SkGraphics.h FilterLevel -> SkFilterQuality 2015-03-16 10:26:13 -07:00
SkImage.h Make SkImage::getTexture() const 2015-02-18 10:50:52 -08:00
SkImageDecoder.h Add SkEncodedFormat, used by SkCodec. 2015-03-20 11:55:55 -07:00
SkImageEncoder.h Add SkEncodedFormat, used by SkCodec. 2015-03-20 11:55:55 -07:00
SkImageFilter.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkImageGenerator.h guarded change to SkImageGenerator to make getInfo() const 2015-03-19 08:31:14 -07:00
SkImageInfo.h add kGray_8_SkColorType 2015-03-17 17:44:07 -07:00
SkInstCnt.h DM: wire up --leaks / -l again 2015-02-02 13:24:37 -08:00
SkLazyPtr.h Clean up SkDynamicAnnotations. 2015-03-12 05:27:46 -07:00
SkMallocPixelRef.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkMask.h remove unused kLCD_MaskFormat 2014-11-13 14:39:58 -08:00
SkMaskFilter.h I'd really like to land this before the branch so speedy reviews are appreciated. 2015-02-25 13:19:48 -08:00
SkMath.h Disable the noisiest /analyze warning in Chrome. ~3,700/12,000 2015-01-30 12:57:50 -08:00
SkMatrix.h use Sk4f for matrix math 2015-03-29 11:58:48 -07:00
SkMetaData.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkMultiPictureDraw.h Add a flag to flush the canvases during SkMultiPictureDraw::draw(). 2015-01-28 11:01:06 -08:00
SkMutex.h Atomics overhaul. 2015-02-02 12:22:07 -08:00
SkOnce.h Extract the spinlock from SkOnce as SkSpinlock. 2015-03-30 08:13:34 -07:00
SkOSFile.h Move SkOSFile::Iter impls into ports. 2015-02-12 07:18:27 -08:00
SkPackBits.h Automatic update of all copyright notices to reflect new license terms. 2011-07-28 14:26:00 +00:00
SkPaint.h Rename GrBitmapTextContextB to GrAtlasTextContext 2015-04-02 09:19:04 -07:00
SkPath.h fuzzer fixes 2015-02-25 09:04:04 -08:00
SkPathEffect.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkPathMeasure.h use conics 2014-12-17 08:21:05 -08:00
SkPathRef.h Fix rrects that are large enough that we lose/gain a bit when we add the radius to a bounds coordinate. 2014-12-15 12:28:33 -08:00
SkPicture.h Send SkPicture deletion message lazily. 2015-04-07 06:34:05 -07:00
SkPictureRecorder.h Rename SkCanvasDrawable to SkDrawable, and make public 2015-02-06 08:36:15 -08:00
SkPixelRef.h Steal a bit from the gen ID instead of managing two atomic values. 2015-02-25 09:10:57 -08:00
SkPixelSerializer.h add const to encodePixels pixel parameter 2014-12-19 12:26:07 -08:00
SkPoint.h Rewrite NaN checks in terms of SkScalarIsNaN() 2014-12-15 12:08:47 -08:00
SkPostConfig.h Remove all code related to NaCl 2015-04-02 12:16:36 -07:00
SkPreConfig.h Remove all code related to NaCl 2015-04-02 12:16:36 -07:00
SkRasterizer.h Remove SK_SUPPORT_LEGACY_DEEPFLATTENING. 2014-12-01 11:47:08 -08:00
SkRect.h some utils for rect and matrix 2015-03-13 06:08:28 -07:00
SkRefCnt.h Clean up BlockRef 2015-04-06 08:57:32 -07:00
SkRegion.h Add dump() to SkClipStack to help with debugging. 2014-06-09 07:59:06 -07:00
SkRRect.h Fill SkRRect::fType proactively. 2014-12-18 13:29:54 -08:00
SkScalar.h Use SkTMin and SkTMax for clamp/pin. 2015-03-09 13:40:15 -07:00
SkShader.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkSize.h deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients 2013-12-17 19:22:07 +00:00
SkSpinlock.h Extract the spinlock from SkOnce as SkSpinlock. 2015-03-30 08:13:34 -07:00
SkStream.h Add a method to read a stream without advancing it. 2015-04-02 13:19:51 -07:00
SkString.h document the SkStrAppend methods 2014-11-07 07:37:33 -08:00
SkStrokeRec.h optional res-scale parameter to getFillPath 2015-02-12 13:35:52 -08:00
SkSurface.h Remove deprecated SkSurface::NewRenderTarget factories 2015-01-23 11:02:50 -08:00
SkSurfaceProps.h add SkImage::newSurface 2014-11-21 08:46:38 -08:00
SkTArray.h Add tests for STArray swap 2015-02-10 19:46:58 -08:00
SkTDArray.h [SkSVGDevice] Full font family support 2015-02-13 08:55:24 -08:00
SkTDict.h move some headers out of public 2014-06-17 09:04:45 -07:00
SkTDStack.h Sanitizing source files in Skia_Periodic_House_Keeping 2013-01-26 07:06:02 +00:00
SkTemplates.h Spin off SkTHashTable, SkTHashMap, SkTHashSet 2015-02-12 13:20:08 -08:00
SkTextBlob.h Rename GrBitmapTextContextB to GrAtlasTextContext 2015-04-02 09:19:04 -07:00
SkThread.h Atomics overhaul. 2015-02-02 12:22:07 -08:00
SkTime.h Revert of Add nanosecond timer. (https://codereview.chromium.org/250243002/) 2014-04-24 20:17:24 +00:00
SkTInternalLList.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTLazy.h "NULL !=" = NULL 2014-09-05 13:34:00 -07:00
SkTRegistry.h Rewrite SkTRegistry to take any trivially-copyable type. 2013-09-04 17:20:18 +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 Remove SkFontHost includes and friends. 2015-02-23 08:25:00 -08:00
SkTypes.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkUnPreMultiply.h Factor out UnPreMultiplyPreservingByteOrder 2014-01-15 22:24:58 +00:00
SkUtils.h SSE2 implementation of memcpy32 2014-05-21 12:43:07 +00:00
SkWeakRefCnt.h C++11 override should now be supported by all of {bots,Chrome,Android,Mozilla} 2015-03-25 18:17:32 -07:00
SkWriteBuffer.h Replace EncodeBitmap with an interface. 2014-12-11 10:53:58 -08:00
SkWriter32.h Make SkWriter32::snapshotAsData() a dumb copy. 2015-01-29 12:03:53 -08:00
SkXfermode.h Remove the need for asCoeff in SkXfermode. 2015-01-22 06:52:29 -08:00