History log of /external/skia/src/core/SkBitmapProcShader.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f1a1e8d5528d123890c9e86f672084b86c69dcfe 14-May-2012 Derek Sollenberger <djsollen@google.com> Cleanup pixel ref mutexes in Skia

Mutexes in pixelrefs were done very sloppily initially. The code (a) assumes all
pixelref subclasses want a mutex to guard their lock/unlock virtuals, and (b)
most subclasses use the same mutex for *all* of their instances, even when there
is no explicit need to guard modifying one instances with another.

When we try drawing bitmaps from multiple threads, we are seeing a lot of slow-
down from these mutexes. This CL has two changes to try to speed things up.

1. Add setPreLocked(), for pixelrefs who never need the onLockPixels
virtual to be called. This speeds up those subclasses in multithreaded environs
as it avoids the mutex lock all together (e.g. SkMallocPixelRef).

2. Add setMutex() to allow a subclass to change the mutex choice. ashmem wants
this, since its unflattening constructor cannot pass down the null, it needs
to cleanup afterwards.

see https://codereview.appspot.com/6199075/

bug: 6469917
Change-Id: I81a7cfa0b2ead5a42059697eafa58de1e7a87da2
/external/skia/src/core/SkBitmapProcShader.cpp
1cab2921ab279367f8206cdadc9259d12e603548 18-Jan-2012 Derek Sollenberger <djsollen@google.com> Skia merge (revision 3022)

This CL has companion changes to account for API updates in...
(1) frameworks/base
(2) external/webkit

Change-Id: Ibb989e76e8bd24313849f9631dbef42cdef9eb7d
/external/skia/src/core/SkBitmapProcShader.cpp
05b6b4d746867a9fb02e14edfe1bf3685abeb813 14-Mar-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 922)

Change-Id: I7ed57d10905d8bad6486a4d7410165eec1cc2b4f
/external/skia/src/core/SkBitmapProcShader.cpp
40528743dbb9ce7f39f093e0cdc47849ac8887cf 07-Jan-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 808)

This merge has companion changes in the following projects in order
to be compatible with changes to skia interfaces and practices:

1. /frameworks/base
2. /external/webkit

Change-Id: I54092971305579e81a8fdb27bbe04ec340792e3b
/external/skia/src/core/SkBitmapProcShader.cpp
4c1037238c8ebcef8c75b5d43730ed308a11102c 14-Apr-2010 Mike Reed <reed@google.com> refresh from trunk

Change-Id: I0175ec7482f8cf85d25165da360a5352979fd7a0
/external/skia/src/core/SkBitmapProcShader.cpp
6547cc691368e758fb85fdd7e88fd807140fb61b 26-Oct-2009 Mike Reed <reed@google.com> filter preserves opaqueness, so remove work-around code in bitmap shader

The work-around code forced us to take a slower path, which is unnecessary now that filter
is precise for opaque inputs.
/external/skia/src/core/SkBitmapProcShader.cpp
4c1d4eb4c9602adf6207d1dffcbfc793cffc43e8 16-Oct-2009 Mike Reed <reed@google.com> refresh from skia/trunk
/external/skia/src/core/SkBitmapProcShader.cpp
2e8fbf0f64801962778aa2d0e0177a8be4c03d89 27-Aug-2009 Mike Reed <reed@google.com> distinguish 32 and 16 bit const-in-Y flags for shaders, so we can still take advantage
of gradients' ability to pre-dither their cache.
/external/skia/src/core/SkBitmapProcShader.cpp
d183501476bf8c4b92b1681857f0a96c487d9b40 26-Aug-2009 Mike Reed <reed@google.com> refresh from trunk
- edge case fix in qsort compare proc (overflowing subtract)
- special case 1x1 bitmaps to draw as a color (much faster)
/external/skia/src/core/SkBitmapProcShader.cpp
3026a9ec59b285412941d278a570e382088f8ada 24-Aug-2009 Mike Reed <reed@google.com> refresh from skia trunk
- correctly respect dither for index bitmaps
- fix copyTo to respect isOpaque()
- sanity check in antipath (need to investigate root cause)
- warning fix in bitmap sampler
/external/skia/src/core/SkBitmapProcShader.cpp
c1c43a17e7f2a87951739691056728a80e9aef6b 14-Aug-2009 Mike Reed <reed@google.com> fix overflow in fill_sequential quad case
compute max count from buffer size for bitmap shader
zero-init paint in constructor to account for padding so that our == works correctly using memcmp
/external/skia/src/core/SkBitmapProcShader.cpp
9a5843c9b6ef01f25513bef72a91936f75cc4458 13-Aug-2009 Mike Reed <reed@google.com> special case no scale in the matrixprocs for tiled bitmaps
yields ~10% overall speedup
also, refresh misc fixes in freetype and antipath from trunk
/external/skia/src/core/SkBitmapProcShader.cpp
60441ca59855d5289dd533aea1a40eb898b8a745 16-Jul-2009 Mike Reed <reed@google.com> add fast-case for bitmap shaders
first stage of neon optimizations
/external/skia/src/core/SkBitmapProcShader.cpp
f294d10d594ac335ea3bd09caec89004d41edc5c 15-Jun-2009 Mike Reed <reed@google.com> add constY flag to shaders
add opaque special case to 16bit blitter
add Format optional arg to decoder helpers
/external/skia/src/core/SkBitmapProcShader.cpp
b630785db28d3dbd2ef9fa2b15eb7aea0def82e8 02-Jun-2009 Mike Reed <reed@google.com> refresh from skia, esp. with opengl updates
initialize fFlags in shader constructors
/external/skia/src/core/SkBitmapProcShader.cpp
0910916c0f7b951ee55c4b7c6358295b9bca0565 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/external/skia/src/core/SkBitmapProcShader.cpp
6eb364108744656fcd23a96a478aa772cd4e85bc 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/external/skia/src/core/SkBitmapProcShader.cpp
03202c9c3dfbf8c4feb0a1ee9b3680817e633f58 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
/external/skia/src/core/SkBitmapProcShader.cpp