reed
2347b62467
change drawPicture in SkRecord to just ref the picture
...
also fix some int/unsigned/size_t warnings
BUG=skia:
R=mtklein@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/449933002
2014-08-07 12:19:50 -07:00
reed
202ab2a5ca
add isRect() check to AAClip, to detect if a soft-clip is really just an irect
...
taken from (https://codereview.chromium.org/445233006/ )
fix: don't assume that the first yoffset is 0, since we may have performed a translate and not
re-alloced our data.
This reverts commit 0aeea6d344
.
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/443353004
2014-08-07 11:48:10 -07:00
krajcevski
7b62448065
Revert of - Add astcbitmap to gm slides ( https://codereview.chromium.org/444093002/ )
...
Reason for revert:
Breaking DM
Original issue's description:
> - Add astcbitmap to gm slides
> - Add additional ASTC formats
> - Add astc image decoder files
>
> Committed: https://skia.googlesource.com/skia/+/2fc05823fed4b9649338f3029cd1ba05ef49a02f
R=reed@google.com , robertphillips@google.com , halcanary@google.com
TBR=halcanary@google.com , reed@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/447343002
2014-08-07 11:33:59 -07:00
reed
0aeea6d344
Revert of add isRect() check to AAClip, to detect if a soft-clip is really just an irect ( https://codereview.chromium.org/445233006/ )
...
Reason for revert:
new code asserts on some pictures
Original issue's description:
> add isRect() check to AAClip, to detect if a soft-clip is really just an irect
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/592cb8d552556b1e922887d506d00b64bc5d0547
R=bsalomon@google.com , humper@google.com
TBR=bsalomon@google.com , humper@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: reed@google.com
Review URL: https://codereview.chromium.org/452533002
2014-08-07 11:19:11 -07:00
krajcevski
2fc05823fe
- Add astcbitmap to gm slides
...
- Add additional ASTC formats
- Add astc image decoder files
R=reed@google.com , robertphillips@google.com , halcanary@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/444093002
2014-08-07 11:18:09 -07:00
tomhudson
8aed3c151f
Don't fail unit test if resources not found on device.
...
Not 100% sure about the right thing to do here; looks like some other
tests warn but don't officially fail.
R=djsollen@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/451703004
2014-08-07 10:20:51 -07:00
reed
592cb8d552
add isRect() check to AAClip, to detect if a soft-clip is really just an irect
...
BUG=skia:
R=bsalomon@google.com , humper@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/445233006
2014-08-07 09:20:12 -07:00
Derek Sollenberger
da7a944e29
Revert "Remove SkPaintOptionsAndroid"
...
This reverts commit 27fb94999b
.
Review URL: https://codereview.chromium.org/450513002
2014-08-06 16:34:40 -04:00
Derek Sollenberger
27fb94999b
Remove SkPaintOptionsAndroid
...
Review URL: https://codereview.chromium.org/447873003
2014-08-06 16:30:51 -04:00
fmalita
b5f7826c51
Explicit tile bounds for SkPictureShader
...
The integer picture size is not granular enough to allow precise tiling
in arbitrary coordinate systems. This CL adds an optional tile bounds
float rect param to control the tile size and location.
(this also allows tile spacing emulation for picture
shaders).
R=reed@google.com , robertphillips@google.com
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/437393003
2014-08-06 13:07:15 -07:00
djsollen
1b27704eba
Remove ALL font fallback logic from Skia.
...
R=reed@google.com , bungeman@google.com , caryclark@google.com
Author: djsollen@google.com
Review URL: https://codereview.chromium.org/434623002
2014-08-06 06:58:06 -07:00
tomhudson
07544757c9
Parses sample code provided by Android project. Attempts to keep FontFamily data structures produced consistent with expectations of previous versions of Skia.
...
R=bungeman@google.com , djsollen@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/446473003
2014-08-05 13:35:02 -07:00
krajcevski
e90c900ed7
Add ETC1 format to SkTextureCompressor
...
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/432143002
2014-08-05 07:37:27 -07:00
tomhudson
f79673bbae
Test and generalize font configuration parser
...
Add a basic unit test for the Android font configuration parser.
Add a check for the new LMP file format; on detection, switch to a new
(as-yet unwritten) parser.
R=bungeman@google.com , djsollen@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/439813002
2014-08-05 06:36:14 -07:00
krajcevski
50495571df
Revert of Add ETC1 format to SkTextureCompressor ( https://codereview.chromium.org/432143002/ )
...
Reason for revert:
Breaking Chrome.
Original issue's description:
> Add ETC1 format to SkTextureCompressor
>
> Committed: https://skia.googlesource.com/skia/+/5d8b1b44ea7636fc8e98247cb311568f277ce3a5
R=robertphillips@google.com
TBR=robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/438443004
2014-08-04 09:47:32 -07:00
krajcevski
5d8b1b44ea
Add ETC1 format to SkTextureCompressor
...
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/432143002
2014-08-04 09:08:29 -07:00
halcanary
a0cc8334da
add a libjpeg test
...
This tests for a bug in libjpeg where INT32 is typedefed to long
and memory is written to outside of the array.
BUG=skia:2791
R=djsollen@google.com , mtklein@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/435753002
2014-08-01 10:31:48 -07:00
krajcevski
4ad76e3511
Add initial pipeline for decompressors
...
Committed: https://skia.googlesource.com/skia/+/14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/432503002
2014-07-31 14:12:51 -07:00
robertphillips
0c42332859
Add CTM to the cached layers' key and reduce render target pingponging in layer pre-rendering
...
The CTM is required on the key so we will re-render when necessary.
The SkGpuDevice change ensures big layers in the midst of atlas-able layers don't cause a render target switch.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/433553002
2014-07-31 11:02:38 -07:00
mtklein
1b51d261ec
Revert of Add initial pipeline for decompressors ( https://codereview.chromium.org/432503002/ )
...
Reason for revert:
New test is crashing on Android.
http://108.170.220.21:10117/builders/Test-Android-Nexus10-MaliT604-Arm7-Debug/builds/2509/steps/RunTests/logs/stdio
http://108.170.220.21:10117/builders/Test-Android-Nexus4-Adreno320-Arm7-Debug/builds/2313/steps/RunTests/logs/stdio
Original issue's description:
> Add initial pipeline for decompressors
>
> Committed: https://skia.googlesource.com/skia/+/14a1df0bcd00734e6efbe4a21629fe95118815ef
R=robertphillips@google.com , krajcevski@google.com
TBR=krajcevski@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/425223006
2014-07-31 09:34:21 -07:00
krajcevski
14a1df0bcd
Add initial pipeline for decompressors
...
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/432503002
2014-07-31 08:42:06 -07:00
dneto
3f22e8c44a
Fix end-of-pattern matching for Skia recording optimization.
...
The recorder optimizer's pattern matcher was accepting command sequences
when it shouldn't have.
In the submitted case, and the pattern matcher was looking for:
saveLayer, drawBitmap, restore
and in the rendering for the submitted case, the sequence of commands
were:
saveLayer, drawBitmap, drawBitmap, restore
This sequence was improperly accepted by the matcher, and the optimizer
reduced the sequence to:
drawBitmap, drawBitmap
where the opacity from the saveLayer paint argument was applied
to the first drawBitmap only.
The user-visible effect in Chrome was a flashing effect on an image
caused by incorrect (too-high) opacity.
The patch adds a Skia test to check for pixel colour values in
a similarly structured recording. All other Skia tests pass.
Blink layout tests also pass with this change.
BUG=chromium:344987
R=robertphillips@google.com , reed@google.com , mtklein@google.com
Author: dneto@chromium.org
Review URL: https://codereview.chromium.org/430503004
2014-07-30 15:42:22 -07:00
senorblanco
3d822c29d4
Intersect SkPictureImageFilter bounds against clip bounds.
...
Intersect SkPictureImageFilter bounds against clip bounds
to avoid unnecessary processing. This is how the other
filters work (via applyCropRect()), but SkPictureImageFilter
maintains its own crop.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/428263003
2014-07-30 14:49:31 -07:00
mtklein
e83909f76c
Add some debugging to PremulAlphaRoundTrip test.
...
BUG=skia:2782
R=bensong@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/429313002
2014-07-30 12:37:19 -07:00
senorblanco
55b6d8be99
Implement a persistent uniqueID-based cache for SkImageFilter.
...
Add a unique ID to SkImageFilter, and use it as part
of a persistent cache of image-filtered results. This is used for
caching frame-to-frame coherent filters.
We also keep track of which filter subtrees do not reference the
src input, and use a GenID of zero for the src input in that case.
That way, subtrees which are not dependent on the filter input can be
cached independently of it.
This gives approximately a 4X speedup on
letmespellitoutforyou.com/samples/svg/filter_terrain.svg on Z620
and Nexus10. The cache key consists of the uniqueID of the filter, the
clip bounds, the CTM and the genID of the input bitmap.
Since this does not yet handle the case where the input primitives
(and part of the resulting filter tree) are unchanged, we have
to keep around the external cache for that painting case.
When the work to cache unchanging input primitives is done, the
old cache can be removed, and the new UniqueIDCache will be renamed
to Cache.
R=bsalomon@google.com , mtklein@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/414483003
2014-07-30 11:26:46 -07:00
mtklein
6d88e6ce51
Fix way-over-allocation in pipe.
...
https://codereview.chromium.org/283093002 fixed some bugs in pipe memory
allocation, but also introduced one of its own: nearly every block requested
from needOpBytes() got its own 16K allocation.
The correct logic is to take the requested size, add four more bytes for a
DrawOp, make sure that's 4-byte aligned, then check to see if there's enough
space for that in the current block. If there's not, allocate at least
MIN_BLOCK_SIZE bytes to fit the request.
The bug is that I moved that round-up-to-MIN_BLOCK_SIZE step before checking
for space in the current block. This means most (all?) blocks will be 16K but
never seem to have room to fit another allocation. You need 8 bytes? You get
16K. You need 8 more bytes? Nope, can't fit that. Here's a new 16K...
This reverts the change to the test I made then, which really should have
tipped me off. It was testing exactly this bug.
BUG=372671
R=tomhudson@chromium.org , tomhudson@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/433463003
2014-07-30 09:17:54 -07:00
krajcevski
b5294e8d45
Bring LATC in line with other formats (i.e. write a blitter and
...
an "optimized" compression routine).
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/429683003
2014-07-30 08:34:51 -07:00
robertphillips
09dde64628
Now always use Atlas for layer cache
...
This is setup for running cluster telemetry tests
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/429593002
2014-07-29 07:14:49 -07:00
robertphillips
8ab8cc07cf
Finish removing GrTHashTable
...
This class is no longer used in Ganesh (in favor of SkTDynamicHash)
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/421253003
2014-07-29 06:17:49 -07:00
robertphillips
320c92380f
Add plot-based purging to GrLayerCache
...
This CL allows a GrPlot full of atlased layer to be purged from the atlas to make room for new layers.
R=jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/411703003
2014-07-29 06:07:19 -07:00
tfarina
a8e2e1504b
Cleanup: Rename SkOSPath functions.
...
Mostly for brevity and matches better with Python:
Python | Old C++ | New C++
os.path.join | SkOSPath::SkPathJoin | SkOSPath::Join
os.path.basename | SkOSPath::SkBasename | SkOSPath::Basename
BUG=None
TEST=make all
R=mtklein@google.com , bsalomon@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/428443002
2014-07-28 19:26:58 -07:00
halcanary
186e699efe
disable new test on windows
...
R=bensong@google.com , djsollen@google.com
TBR=bensong@google.com , djsollen@google.com
CQ_EXTRA_TRYBOTS=tryserver.skia:Test-Win7-ShuttleA-HD2000-x86_64-Release-Trybot
NOTREECHECKS=true
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/424833002
2014-07-28 10:54:26 -07:00
halcanary
b1ab5fdd11
If decoder doesn't ouput indexed color, don't check colortable
...
R=djsollen@google.com , bungeman@google.com
TBR=bungeman@google.com , djsollen@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/427593002
2014-07-28 08:56:35 -07:00
halcanary
7f8aad84de
SkDiscardablePixelRef returns correct indexed color on relock.
...
R=djsollen@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/428603002
2014-07-28 08:23:55 -07:00
bungeman
d6aeb6dc8f
Fix thread unsafe mutex initialization.
...
BUG=skia:2779
R=robertphillips@google.com , mtklein@google.com , reed@android.com , bsalomon@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/419113002
2014-07-25 11:52:48 -07:00
bsalomon
6d3fe022d6
Rename GrGpuObject to GrGpuResource
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/418143004
2014-07-25 08:35:45 -07:00
bsalomon
c44be0e9e4
Merge GrGpuObject and GrCacheable.
...
We want to create a new base class for "meta" gr resources as part of the GrResourceCache rewrite and this is an iterim step towards that goal.s
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/414013005
2014-07-25 07:32:33 -07:00
piotaixr
76d5b477c9
Now able to set the localMatrix when creating a SkShader from a SkImage
...
BUG=skia:2771
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , bsalomon@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/409653003
2014-07-22 15:02:05 -07:00
scroggo
24519371cb
Run CanvasState test across a library boundary.
...
Refactor CanvasStateTest to pull out functions which can
either be called directly or from a shared library. Add a
command line flag to pass in the path to a library to open
to call those functions from.
Separate different CanvasTest tests into separate DEF_TEST
tests. This allows them to be run in parallel.
Move the ifdefs outside of function declarations to skip
running CanvasTest tests which do nothing.
Add the canvas_state_lib target. It is a shared library that
exports some functions to be called by another version of
Skia.
BUG=b/15693384
R=djsollen@google.com , reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/400043003
2014-07-22 12:38:55 -07:00
robertphillips
d771f6bc27
Add auto purging for SkPicture-related Ganesh resources (esp. layers)
...
This is intended to lower the bookkeeping burden for the Layer Caching feature. Cached layers are now automatically purged when a picture is deleted.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/408923002
2014-07-22 10:18:06 -07:00
caryclark
17f0b6df72
share dm and command flags
...
Share command flags between dm and unit tests.
Also, allow dm's core to be included by itself and iOSShell.
Command line flags that are the same (or nearly the same) in DM
and in skia_tests have been moved to common_flags. Authors,
please check to see that the shared common flag is correct for
the tool.
For iOS, the 'tool_main' entry point has a wrapper to allow multiple
tools to be statically linked in the iOSShell.
Since SkCommandLineFlags::Parse can only be called once, these calls
are disabled in the IOS build.
Since the iOS app directory is dynamically assigned a name, use '@' to
select it. (This is the same convention chosen by the Mobile Harness
iOS file system utilities.)
Move the heart of dm.gyp into dm.gypi so that it can be included by
itself and iOSShell.gyp.
Add tools/flags/SkCommonFlags.* to define and declare common
command line flags.
Add support for dm to iOSShell.
BUG=skia:
R=scroggo@google.com , mtklein@google.com , jvanverth@google.com , bsalomon@google.com
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/389653004
2014-07-22 10:15:35 -07:00
bsalomon
dcabb05113
Make GrCacheable implement its own ref counting.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/392333008
2014-07-21 14:24:01 -07:00
sugoi
518d83dbc1
Skia side RGB to YUV gpu conversion
...
This code is the one that's currently working in my local chromium build. A few things still need to be addressed and I'll highlight these directly in the code.
BUG=skia:
R=reed@google.com , bsalomon@google.com , senorblanco@google.com , senorblanco@chromium.org , robertphillips@google.com , scroggo@google.com , halcanary@google.com
Author: sugoi@chromium.org
Review URL: https://codereview.chromium.org/374743003
2014-07-21 11:37:39 -07:00
egdaniel
02cafcc1bf
Remove gpu shader optimatization for solid white or trans black colors
...
Running test on the added bench which draws a grid of all white paths, all blue paths, or alternating checkered white/blue paths.
With optimization in (ms):
White Blue Checkered
Linux ~80 ~80 ~160
N7 ~800 ~1100 ~1500
Moto-e ~830 ~1100 ~2500
Without optimization in (ms):
White Blue Checkered
Linux ~80 ~80 ~80
N7 ~1100 ~1100 ~1100
Moto-e ~1100 ~1100 ~1500
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/5f78d2251a440443c9eaa321dad058d7a32bfef7
R=bsalomon@google.com
Author: egdaniel@google.com
Review URL: https://codereview.chromium.org/375823005
2014-07-21 11:37:28 -07:00
robertphillips
3d533ac917
Replace GrTHash with SkTDynamicHash
...
Mike: SkTDynamicHash changes
Brian: Ganesh changes
This removes three instances of GrTHash leaving the ones in GrTextStrike.h
R=mtklein@google.com , bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/402693003
2014-07-20 09:40:00 -07:00
halcanary
1d1795b199
Make ScaledImageCache unit test less dependent on global state.
...
motivation: The ASAN bot routinely trips this unit test.
R=tomhudson@chromium.org , tomhudson@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/401833002
2014-07-18 09:18:41 -07:00
caryclark
19eb3b2f0a
update pathops core and tests
...
split out skpclip (the test of 1M pictures) into its own project
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/400033002
2014-07-18 05:08:14 -07:00
bungeman
733418f91e
Remove SkRefPtr.
...
R=mtklein@google.com , reed@google.com , bsalomon@google.com
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/393913002
2014-07-17 12:17:55 -07:00
bsalomon
e904c09a3a
Fix alpha textures in NV ES3 contexts on Windows.
...
Make unit tests iterate over all the rendering GL context types rather than using kNative.
Fix the extension printing when gStartupSpew is set.
R=jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/398183002
2014-07-17 10:50:59 -07:00
halcanary
0db38ccfef
erase bitmap inside unit test to make valgrind happier
...
R=mtklein@google.com
TBR=sunshine
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/397273006
2014-07-17 10:17:28 -07:00
bsalomon
929f29a5c1
Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
...
Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
Cleans up docs around GrBackendEffectFactory.
Committed: https://skia.googlesource.com/skia/+/c0ea398aff8254e31152cbb94c9ab6150428e252
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/379113004
2014-07-17 07:55:11 -07:00
halcanary
805ef159d1
Set maximum output size for scaled-image-cache images
...
Accessable via:
SkScaledImageCache::{G,S}etMaximumOutputSizeForHighQualityFilter
Also, a unit test.
BUG=389439
R=humper@google.com , tomhudson@google.com , reveman@chromium.org , vangelis@chromium.org , reed@google.com
Author: halcanary@google.com
Review URL: https://codereview.chromium.org/394003003
2014-07-17 06:58:01 -07:00
joshualitt
ee5da55477
32 bpp floating point textures
...
This is VERY preliminary, but it was sufficient for me to get 32 bit floating point textures in a sample app
BUG=skia:
R=bsalomon@chromium.org , bsalomon@google.com
Author: joshualitt@chromium.org
Review URL: https://codereview.chromium.org/359803003
2014-07-16 13:32:56 -07:00
bungeman
c7af812b42
Revert of Reopened: Caching the result of readPixelsSupported ( https://codereview.chromium.org/364193004/ )
...
Reason for revert:
This appears to be causing failures on Android when running tests.
Original issue's description:
> Caching the result of readPixelsSupported
>
> The call was calling GR_GL_GetIntegerv 2 times for each readPixels
> and thus was causing a loss of performance
>
> (resubmit of issue 344793008)
>
> Benchmark url: http://packages.gkny.fr/tst/index.html
>
> BUG=skia:2681
>
> Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
>
> Committed: https://skia.googlesource.com/skia/+/8339371f1ec3c57a0741932fd96bff32c53d4e54
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , mtklein@google.com , bsalomon@google.com , piotaixr@chromium.org
TBR=bsalomon@chromium.org , bsalomon@google.com , junov@chromium.org , mtklein@google.com , piotaixr@chromium.org , reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2681
Author: bungeman@google.com
Review URL: https://codereview.chromium.org/395203002
2014-07-16 09:10:41 -07:00
mtklein
7940100fae
Revert of Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys. ( https://codereview.chromium.org/379113004/ )
...
Reason for revert:
Most likely candidate for Valgrind failures:
[21:10:08.755668] ==3036== Use of uninitialised value of size 8
[21:10:08.755753] ==3036== at 0x734AB2: GrGpuGL::ProgramCache::getProgram(GrGLProgramDesc const&, GrEffectStage const**, GrEffectStage const**) (GrGpuGL_program.cpp:107)
[21:10:08.755788] ==3036== by 0x734ED2: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:253)
[21:10:08.755811] ==3036== by 0x6E81C2: GrGpu::setupClipAndFlushState(GrGpu::DrawType, GrDeviceCoordTexture const*, GrDrawState::AutoRestoreEffects*, SkRect const*) (GrGpu.cpp:350)
[21:10:08.755837] ==3036== by 0x6E9BE8: GrGpu::onDraw(GrDrawTarget::DrawInfo const&) (GrGpu.cpp:390)
[21:10:08.755858] ==3036== by 0x6EEECE: GrInOrderDrawBuffer::flush() (GrDrawTarget.h:506)
[21:10:08.755879] ==3036== by 0x6D0EB4: GrContext::flush(int) (GrContext.cpp:1327)
[21:10:08.755900] ==3036== by 0x6D3F8F: GrContext::writeTexturePixels(GrTexture*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1349)
[21:10:08.755922] ==3036== by 0x6D39D7: GrContext::writeRenderTargetPixels(GrRenderTarget*, int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrContext.cpp:1632)
[21:10:08.755949] ==3036== by 0x6FFDF3: GrRenderTarget::writePixels(int, int, int, int, GrPixelConfig, void const*, unsigned long, unsigned int) (GrRenderTarget.cpp:45)
[21:10:08.755978] ==3036== by 0x735563: SkGpuDevice::onWritePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkGpuDevice.cpp:280)
[21:10:08.756003] ==3036== by 0x57A048: SkBaseDevice::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkDevice.cpp:106)
[21:10:08.756025] ==3036== by 0x56D0AE: SkCanvas::writePixels(SkImageInfo const&, void const*, unsigned long, int, int) (SkCanvas.cpp:700)
[21:10:08.756050] ==3036== by 0x56D156: SkCanvas::writePixels(SkBitmap const&, int, int) (SkCanvas.cpp:652)
[21:10:08.756077] ==3036== by 0x5109B6: test_WritePixels(skiatest::Reporter*, GrContextFactory*) (WritePixelsTest.cpp:464)
[21:10:08.756099] ==3036== by 0x51114C: skiatest::WritePixelsClass::onRun(skiatest::Reporter*) (WritePixelsTest.cpp:361)
[21:10:08.756122] ==3036== by 0x406BE8: skiatest::Test::run() (Test.cpp:107)
[21:10:08.756145] ==3036== by 0x4064C2: SkTestRunnable::run() (skia_test.cpp:109)
[21:10:08.756167] ==3036== by 0x405D1A: tool_main(int, char**) (skia_test.cpp:221)
[21:10:08.756189] ==3036== by 0x405F75: main (skia_test.cpp:239)
[21:10:08.756211] ==3036== Uninitialised value was created by a stack allocation
[21:10:08.756233] ==3036== at 0x734CC8: GrGpuGL::flushGraphicsState(GrGpu::DrawType, GrDeviceCoordTexture const*) (GrGpuGL_program.cpp:213)
Original issue's description:
> Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
>
> Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
>
> Cleans up docs around GrBackendEffectFactory.
>
> Committed: https://skia.googlesource.com/skia/+/c0ea398aff8254e31152cbb94c9ab6150428e252
R=robertphillips@google.com , jvanverth@google.com , bsalomon@google.com
TBR=bsalomon@google.com , jvanverth@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/394213002
2014-07-16 06:16:43 -07:00
robertphillips
21048b588f
Always have GrLayer's rect be valid
...
This CL just makes atlasing easier/clearer since there is a separate atlased query method. Not using the rect as a signal also simplifies the rendering of the layer in SkGpuDevice.cpp.
This is calved off from (Add atlased layer purging - https://codereview.chromium.org/367073002/ )
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/384233002
2014-07-15 19:46:35 -07:00
bsalomon
c0ea398aff
Makes GrGLProgramDesc's key store the lengths as well as offsets of the effect keys.
...
Makes it possible to use GrBackendEffectFactories other than GrTBEF by moving meta-key generation out of GrTBEF.
Cleans up docs around GrBackendEffectFactory.
R=robertphillips@google.com , jvanverth@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/379113004
2014-07-15 19:41:17 -07:00
piotaixr
8339371f1e
Caching the result of readPixelsSupported
...
The call was calling GR_GL_GetIntegerv 2 times for each readPixels
and thus was causing a loss of performance
(resubmit of issue 344793008)
Benchmark url: http://packages.gkny.fr/tst/index.html
BUG=skia:2681
Committed: https://skia.googlesource.com/skia/+/753a2964afe5661ce9b2a8ca77ca9d0aabd3173c
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , mtklein@google.com , bsalomon@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/364193004
2014-07-15 19:41:08 -07:00
mtklein
184ff37c62
Keep at most one GPU device alive at a time.
...
NOTREECHECKS=true
BUG=skia:
R=bsalomon@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/392013004
2014-07-15 14:38:53 -07:00
scroggo
41b8687417
Include SkTypes before using ifdefs.
...
Fixes Android framework build.
When building for the Android framework, we depend on SkUserConfig.h
to define things like SK_SUPPORT_GPU. So we cannot have the first
include inside a guard requring SK_SUPPORT_GPU to be defined. Include
SkTypes first, which will pull in SkUserConfig, define the flag, and
allow us to include GrContextFactory.h.
R=reed@google.com , djsollen@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/394533003
2014-07-14 10:25:01 -07:00
senorblanco
837f5321a4
Fix for saveLayer() with filters vs. the BBox Hierarchy.
...
When building acceleration structures for SkPicture, we must transform
the primitive's bounds not only by its own SkPaint, but by the paints of
any saveLayer()s currently active above it.
We do this by pushing the SkPaint onto a stack on
saveLayer(), and popping them on restore(). We also push
a NULL paint in save(), so that the pushes and pops are
balanced.
BUG=skia:2734
R=mtklein@google.com , reed@google.com , robertphillips@google.com
Committed: https://skia.googlesource.com/skia/+/6ca0b6a46cbe9bef3e2b9b9db813ec864efd62de
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/380373003
2014-07-14 10:19:55 -07:00
senorblanco
c07e2811dd
Revert "Fix for saveLayer() with filters vs. the BBox Hierarchy." and
...
"resizeimagefiler is ok with a BBH now".
This reverts commits 6ca0b6a46c
and 8fa73202ea
.
Apparently causing problems in SKP playback.
R=mtklein@google.com , robertphillips@google.com
TBR=mtklein, robertphillips
BUG=skia:
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/381353005
2014-07-14 08:25:34 -07:00
piotaixr
cef04f8188
Deleted SkImage::newShaderClamp: not used, not implemented.
...
Implemented SkImage::newShader.
BUG=skia:2701, 344804
R=junov@chromium.org , reed@chromium.org , bsalomon@chromium.org , reed@google.com
Author: piotaixr@chromium.org
Review URL: https://codereview.chromium.org/345463009
2014-07-14 07:48:04 -07:00
Robert Phillips
cfaeec446d
Remove Skia's use of the default SkPicture constructor and multi-clone
...
This cannot be landed until (Chrome: Switch to one-at-a-time SkPicture::clone interface - https://codereview.chromium.org/380323002/ ) has landed.
R=mtklein@google.com
TBR=reed@google.com
Review URL: https://codereview.chromium.org/388833003
2014-07-13 12:00:50 -04:00
robertphillips
dd528967fc
Remove SkPicture copy constructor
...
Given where we're heading with SkPicture why would you need to make a copy?
R=reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/381133002
2014-07-13 07:55:53 -07:00
reed
b184f7f52b
Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
...
This reverts commit 651eaeadeb
.
TBR=
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/390693002
2014-07-13 04:32:32 -07:00
reed
651eaeadeb
Revert of Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels ( https://codereview.chromium.org/388803007/ )
...
Reason for revert:
still failing (randomly?) bench sometimes. need stack dump to diagnose.
Original issue's description:
> Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
> usning it.
>
> Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/ )"
>
> This reverts commit d08cb905a7
.
>
> TBR=scroggo@google.com
>
> Committed: https://skia.googlesource.com/skia/+/debba5c3d091159149f8a88ab5dcd44dd72e0dc7
R=reed@google.com
TBR=reed@google.com
NOTREECHECKS=true
NOTRY=true
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/382543005
2014-07-12 13:16:10 -07:00
reed
debba5c3d0
Add SkBitmap::readPixels() and reimplement copyTo and SkCanvas::readPixels
...
usning it.
Revert "Revert of add readPixels() to SkBitmap (https://codereview.chromium.org/377303002/ )"
This reverts commit d08cb905a7
.
R=reed@chromium.org
TBR=scroggo@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/388803007
2014-07-12 12:26:36 -07:00
caryclark
936b73424f
ios fixes
...
skia_ios.mm
Get the app's Documents directory and pass use it to set the resource path.
This is a quick hack which will be replaced by a new application that is
a tiny shim around a command line tool.
SkImageEncoder.h
SkForceLinking.cpp
SkImageDecoder_CG.cpp
Add support for FORCE_LINKING so iOS sees the PNG encoder and others.
SkFloatBits.cpp
SkPoint.cpp
Handle denormalized numbers that are floored by the iOS ARM processor.
SkImageDecoder_iOS.mm
Remove empty encoder factory.
SkTouchGesture.cpp
Return early on empty state on touch rather than aborting (crashing)
JpegTest.cpp
Hal via stackoverflow.com says partial jpegs can be gray as well.
skia_test.cpp
Remove crash handler call for now to avoid link failure.
OverwriteLine.h
Remove fancy line overwrite for iOS.
Resources.cpp
Add interface to set resource directory based on runtime query.
BUG=skia:2736 skia:2737 skia:2738
R=reed@google.com , halcanary@google.com , mtklein@google.com , tfarina@chromium.org
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/373383003
2014-07-11 12:14:51 -07:00
bsalomon
848faf00ec
This moves us towards variable length effect keys. The overall program key now allows for it. After the header it stores an array of offsets to effect keys. This allows us to grab the effect keys to pass to effects when they generate code. It also ensures that we can't get a collision by sets of keys that are different lengths but are the same when appended together.
...
R=robertphillips@google.com , jvanverth@google.com , egdaniel@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/356513003
2014-07-11 10:01:02 -07:00
senorblanco
6ca0b6a46c
Fix for saveLayer() with filters vs. the BBox Hierarchy.
...
When building acceleration structures for SkPicture, we must transform
the primitive's bounds not only by its own SkPaint, but by the paints of
any saveLayer()s currently active above it.
We do this by pushing the SkPaint onto a stack on
saveLayer(), and popping them on restore(). We also push
a NULL paint in save(), so that the pushes and pops are
balanced.
BUG=skia:2734
R=mtklein@google.com , reed@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/380373003
2014-07-11 09:56:03 -07:00
jcgregorio
d08cb905a7
Revert of add readPixels() to SkBitmap ( https://codereview.chromium.org/377303002/ )
...
Reason for revert:
Maybe causing crashes in bench.
http://108.170.220.120:10117/builders/Test-ChromeOS-Daisy-MaliT604-Arm7-Debug/builds/2608/steps/RunBench/logs/stdio
Original issue's description:
> add readPixels() to SkBitmap
>
> BUG=chromium:390782
>
> Committed: https://skia.googlesource.com/skia/+/c4f216151b6ade70c35fade09a353052f40236b1
R=scroggo@google.com , bsalomon@google.com , reed@google.com
TBR=bsalomon@google.com , reed@google.com , scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=chromium:390782
Author: jcgregorio@google.com
Review URL: https://codereview.chromium.org/382243003
2014-07-11 07:48:20 -07:00
reed
bbf9f6d1cb
Revert of Slim Skia down to just one murmur3 implementation. ( https://codereview.chromium.org/376183004/ )
...
Reason for revert:
broke 10.6 compile
[17:13:56.863876] [4/336] CXX obj/src/core/core.SkBBoxHierarchyRecord.o
[17:13:56.863997] FAILED: c++ -MMD -MF obj/src/core/core.SkBBoxRecord.o.d -DSK_INTERNAL -DSK_GAMMA_SRGB -DSK_GAMMA_APPLY_TO_A8 -DSK_SCALAR_TO_FLOAT_EXCLUDED -DSK_ALLOW_STATIC_GLOBAL_INITIALIZERS=1 -DSK_SUPPORT_GPU=1 -DSK_SUPPORT_OPENCL=0 -DSK_FORCE_DISTANCEFIELD_FONTS=0 -DSK_SCALAR_IS_FLOAT -DSK_BUILD_FOR_MAC -DSK_USE_POSIX_THREADS -DSK_RELEASE -DNDEBUG -I../../include/config -I../../include/core -I../../include/pathops -I../../include/pipe -I../../include/ports -I../../include/utils -I../../include/xml -I../../src/core -I../../src/sfnt -I../../src/image -I../../src/opts -I../../src/utils -I../../include/utils/mac -I../../include/gpu -I../../src/gpu -fasm-blocks -mpascal-strings -O3 -gdwarf-2 -Wnewline-eof -mmacosx-version-min=10.6 -arch x86_64 -mssse3 -fvisibility=hidden -fvisibility-inlines-hidden -c ../../src/core/SkBBoxRecord.cpp -o obj/src/core/core.SkBBoxRecord.o
[17:13:56.864085] In file included from ../../src/core/SkPictureFlat.h:14,
[17:13:56.864130] from ../../src/core/SkPictureData.h:14,
[17:13:56.864173] from ../../src/core/SkPictureRecord.h:18,
[17:13:56.864217] from ../../src/core/SkBBoxRecord.h:12,
[17:13:56.864261] from ../../src/core/SkBBoxRecord.cpp:9:
[17:13:56.864336] ../../src/core/SkChecksum.h: In static member function ‘static uint32_t SkChecksum::Compute(const uint32_t*, size_t)’:
[17:13:56.864397] ../../src/core/SkChecksum.h:127: error: invalid conversion from ‘const uint32_t*’ to ‘const uint32_t*’
[17:13:56.864462] ../../src/core/SkChecksum.h:128: error: invalid conversion from ‘const uint32_t*’ to ‘const uint32_t*’
[17:13:56.864510] ../../src/core/SkChecksum.h:129: error: comparison between distinct pointer types ‘const uint32_t*’ and ‘const uint32_t*’ lacks a cast
Original issue's description:
> Slim Skia down to just one murmur3 implementation.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587
>
> Committed: https://skia.googlesource.com/skia/+/67a3271f0de9ccc32d559b042b862528272047cc
>
> Committed: https://skia.googlesource.com/skia/+/53d435990bdb4d14df78013da45a9364d0287ebe
R=mtklein@google.com , mtklein@chromium.org
TBR=mtklein@chromium.org , mtklein@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Author: reed@google.com
Review URL: https://codereview.chromium.org/381253003
2014-07-10 14:29:43 -07:00
reed
c4f216151b
add readPixels() to SkBitmap
...
BUG=chromium:390782
R=scroggo@google.com , bsalomon@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/377303002
2014-07-10 14:15:57 -07:00
mtklein
53d435990b
Slim Skia down to just one murmur3 implementation.
...
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/6ac0037b70410ff7d5ce5788bc89314223e1a587
Committed: https://skia.googlesource.com/skia/+/67a3271f0de9ccc32d559b042b862528272047cc
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/376183004
2014-07-10 14:10:47 -07:00
scroggo
ecce60bad6
Build Android with SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG.
...
This flag will be used on Android when built for the framework,
as well as when built for the WebView. Setting this flag for
Android means our tests can fully test CanvasStateTest.
Fix CanvasStateTest. It has bit-rotted since disabling
SK_SUPPORT_LEGACY_CLIPTOLAYERFLAG.
Splitting off from https://codereview.chromium.org/372003002/ ,
as it seems self-contained.
BUG=b/15693384
R=djsollen@google.com , reed@google.com , mtklein@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/375943003
2014-07-09 07:26:40 -07:00
Mike Klein
874a62acef
Revert "Remove ability for Release code to call getRefCnt() or getWeakRefCnt()."
...
This reverts commit 4ae94ffce5
.
BUG=skia:
Review URL: https://codereview.chromium.org/382523002
2014-07-09 09:04:07 -04:00
tfarina
0a65e38560
Cleanup: Rename UnitTestTest.cpp to RTConfRegistryTest.cpp
...
BUG=None
TEST=make tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/374443002
2014-07-08 10:33:28 -07:00
bsalomon
83d081ae1d
Goodbye GrEffectRef.
...
Also, reworked some var names and comments around SkShader::asNewEffect.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/374923002
2014-07-08 09:56:11 -07:00
senorblanco
9ea3d57fde
Clean up SkImageFilter constructors.
...
Now that all creation of SkImageFilters goes through
factory Create() methods, there's no real reason for the
convenience constructors. Some SkImageFilter subclasses
which actually have zero DAG-able inputs were passing NULL
to the superclass constructor. This actually means 1 input,
with a NULL value, not zero inputs. This becomes more
relevant for the upcoming cache infrastructure, where this
indicates that the filter will use its src input, where in
fact some of these filters do not (they are image generators
only).
Limiting SkImageFilter to a single constructor resolves this
ambiguity.
Along the way, I removed all of the default parameters to
the constructors, since the Create methods always call them
with the full argument list.
BUG=skia:
R=reed@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/376953003
2014-07-08 09:16:22 -07:00
bsalomon
97b9ab72cd
Make GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*.
...
Make Sk-effect virtuals produce GrEffect* rather than GrEffectRef*
Make GrEffectRef a typedef for GrEffect.
Committed: https://skia.googlesource.com/skia/+/2011fe9cdfa63b83489a146cea6a724cede352c8
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/377503004
2014-07-08 06:52:35 -07:00
mtklein
4ae94ffce5
Remove ability for Release code to call getRefCnt() or getWeakRefCnt().
...
These getRefCnt() methods are not thread safe, so Skia code should not
be calling them. unique() is fine.
SkDEBUG code (SkASSERTs) can still call getRefCnt() / getWeakRefCnt().
This adds tools/RefCntIs.{h,cpp}, which lets tests make their assertions in
both debug and release modes.
BUG=skia:2726
R=senorblanco@chromium.org , mtklein@google.com , reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/378643003
2014-07-08 06:48:17 -07:00
reed
969842ac9c
Revert of Make GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*. ( https://codereview.chromium.org/377503004/ )
...
Reason for revert:
broke linux builders
Original issue's description:
> Make GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*.
>
> Make Sk-effect virtuals produce GrEffect* rather than GrEffectRef*
>
> Make GrEffectRef a typedef for GrEffect.
>
> Committed: https://skia.googlesource.com/skia/+/2011fe9cdfa63b83489a146cea6a724cede352c8
R=robertphillips@google.com , bsalomon@google.com
TBR=bsalomon@google.com , robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
Author: reed@google.com
Review URL: https://codereview.chromium.org/372053003
2014-07-07 15:17:49 -07:00
bsalomon
2011fe9cdf
Make GrDrawState and GrPaint take GrEffect* instead of GrEffectRef*.
...
Make Sk-effect virtuals produce GrEffect* rather than GrEffectRef*
Make GrEffectRef a typedef for GrEffect.
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/377503004
2014-07-07 15:11:31 -07:00
bsalomon
f99f884cd8
Remove use of GrEffectRef from draw state and below.
...
R=robertphillips@google.com
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/372773002
2014-07-07 11:54:23 -07:00
tfarina
0b7813b8c5
Cleanup: Remove TestXCode project.
...
GYP generates the project files for us now.
$ GYP_GENERATORS=xcode ./gyp_skia
BUG=None
TEST=None
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/365263006
2014-07-07 09:31:44 -07:00
mtklein
06d37714f7
Only you can prevent memory leaks.
...
SkPaint::setFoo() refs the foo, leaving the foo with a bonus ref unless you
call ->unref().
Valgrind caught this:
http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX550Ti-x86_64-Release-Valgrind/builds/317/steps/RunTests/logs/stdio
BUG=skia:
R=tomhudson@chromium.org , mtklein@google.com , tomhudson@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/377523002
2014-07-07 07:00:14 -07:00
tomhudson
d930511ee7
Linear-time implementation of willPlaybackBitmaps(), computed & cached
...
on construction in SkPicture. Unit test.
Template trickery thanks to mtklein@.
BUG=skia:2702
R=mtklein@google.com , reed@android.com , reed@google.com , tomhudson@google.com , mtklein, reed
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/366443002
2014-07-05 13:37:53 -07:00
senorblanco
3df05015ef
Fix SkColorFilterImageFilter matrix optimization.
...
The order of matrices passed to multiplication was wrong (apparently,
this optimization was only being tested with matrices which commute).
See Chrome bug http://crbug.com/378362
R=sugoi@chromium.org
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/371523002
2014-07-03 11:13:09 -07:00
reed
e1085e0381
move SkChecksum and SkEmptyShader to private
...
TBR=reed@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/366133002
2014-07-03 07:26:01 -07:00
reed
7a7c3163f0
return early instead of crashing if fileData fails
...
BUG=skia:
R=krajcevski@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/362833004
2014-07-02 05:57:51 -07:00
reed
f0aed97aec
correctly plumb through explicit rowbytes for allocPixels
...
BUG=skia:
R=caryclark@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/357073003
2014-07-01 12:48:11 -07:00
tfarina
c846f4a96b
Cleanup usage of GetResourcePath() after commit bcbc1788b4
.
...
There was a clean up opportunity left over after
https://skia.googlesource.com/skia/+/bcbc1788b478b1e54079318ad073e8490aa66fae , that could make use of the default parameter of GetResourcePath() function to make some call sites cleaner.
We decided to make it in a separate CL to make reviewer's and author's life easier, so we could catch errors and/or mistakes easily.
BUG=None
TEST=make all && out/Debug/dm && out/Debug/SampleApp
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/351133003
2014-07-01 12:35:49 -07:00
robertphillips
db539905bb
Rename SkPicturePlayback to SkPictureData
...
This is in preparation for splitting the playback portion of the new SkPictureData class into a new SkPicturePlayback class.
R=reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/362773002
2014-07-01 08:47:04 -07:00
caseq
26337e9702
Fix SkTypeface::serialize() on Mac by properly indicating local fonts
...
We used to always set isLocalStream to false in SkTypeface_Mac::onGetFontDescriptor(),
which caused SkTypeface::serialize() to never actually serialize fonts.
BUG=skia:2698
R=reed@google.com , bungeman@google.com
Author: caseq@chromium.org
Review URL: https://codereview.chromium.org/353993003
2014-06-30 12:14:52 -07:00
reed
52d9ac6c92
stop calling SkCanvas::getDevice
...
BUG=skia:
R=bsalomon@google.com , robertphillips@google.com , junov@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/355193006
2014-06-30 09:05:34 -07:00
robertphillips
952841bf41
Begin atlasing
...
This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
1) the atlased layers cannot be purged nor aged out
2) the texture backing the atlas is not pulled from (or returned to) the resource cache
#1 is on hold until we have a recycling rectanizer
A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
Committed: https://skia.googlesource.com/skia/+/55e61f0ef4e5c8c34ac107deaadc9b4ffef3111b
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/354533004
2014-06-30 08:26:50 -07:00
Florin Malita
5f6102d079
SaveFlags be-gone
...
Remove the deprecated save(SaveFlags), willSave(SaveFlags) and all
traces of kMatrix_SaveFlags/kClip_SaveFlag.
BUG=skia:2297
R=mtklein@google.com , reed@google.com , robertphillips@google.com
Review URL: https://codereview.chromium.org/340403003
2014-06-30 10:13:28 -04:00
robertphillips
e462f2bed3
Revert of Begin atlasing ( https://codereview.chromium.org/354533004/ )
...
Reason for revert:
Sigh
Original issue's description:
> Begin atlasing
>
> This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
>
> 1) the atlased layers cannot be purged nor aged out
> 2) the texture backing the atlas is not pulled from (or returned to) the resource cache
>
> #1 is on hold until we have a recycling rectanizer
>
> A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
>
> Committed: https://skia.googlesource.com/skia/+/55e61f0ef4e5c8c34ac107deaadc9b4ffef3111b
R=bsalomon@google.com
TBR=bsalomon@google.com
NOTREECHECKS=true
NOTRY=true
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/359953002
2014-06-29 17:16:27 -07:00
robertphillips
55e61f0ef4
Begin atlasing
...
This CL makes it possible for pulled-forward-layers to be atlased. It currently has a couple glaring limitations (which is why it is disabled):
1) the atlased layers cannot be purged nor aged out
2) the texture backing the atlas is not pulled from (or returned to) the resource cache
#1 is on hold until we have a recycling rectanizer
A separate major limitation (the non-atlased layers aren't cached) is blocked until we can transmute entries in the resource cache from scratch to non-scratch while potentially preserving their contents.
R=bsalomon@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/354533004
2014-06-29 15:08:31 -07:00
reed
4af35f348b
writepixels needs to bump genID
...
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/352573005
2014-06-27 17:47:49 -07:00
mtklein
d3e474e20c
Deprecate SkPicture::clone().
...
Chrome will need -DSK_SUPPORT_LEGACY_PICTURE_CLONE.
This removes the modes from our tools that use clone(). No
bots run these. DM used clone() in a way that we can just
share the picture now.
I plan to bring back the ability to test multithreaded
picture rendering soon.
BUG=skia:2378
R=robertphillips@google.com , mtklein@google.com , bsalomon@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/338633011
2014-06-27 12:34:44 -07:00
robertphillips
e5c1e3cd63
Fix RRect tranform bug
...
When a RRect is an oval transforming the rectangle and the radii separately can result in a non-oval result (i.e., due to numerical issues some tiny straight edges may creep in). This CL remedies the situation by computing the new radii directly from the transformed rect.
BUG=skia:2696
R=caryclark@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/354913004
2014-06-27 08:59:26 -07:00
henrik.smiding
3bb195ef0d
Add SSE4 optimization of S32A_Opaque_Blitrow
...
Adds optimization of Skia S32A_Opaque_Blitrow blitter using SSE4.2 SIMD
instruction set. Special case for when alpha is zero or opaque.
Performance increase of 10%-400% compared to the existing SSE2
optimization (measured on Silvermont architecture).
Noticeable in ~25 different skia bench subtests, especially in
bitmap_8888_*, repeatTile_*, and morph_*.
bitmap_8888_A - 100% faster
bitmap_8888_A_source_transparent - 250% faster
bitmap_8888_A_source_opaque - 25% faster
bitmap_8888_A_scale_bicubic - 75% faster
Signed-off-by: Henrik Smiding <henrik.smiding@intel.com>
Committed: https://skia.googlesource.com/skia/+/e2527b147679b0c43019fae7d59cc3777d2d097e
Committed: https://skia.googlesource.com/skia/+/b5c281e1e06af3be804309877de1dac6145686b9
R=reed@google.com , mtklein@google.com , tomhudson@google.com , djsollen@google.com , joakim.landberg@intel.com
Author: henrik.smiding@intel.com
Review URL: https://codereview.chromium.org/289473009
2014-06-27 08:03:17 -07:00
reed
982542dce8
add SkSurface::NewRasterDirectReleaseProc
...
allows for lifetime control of pixel memory on raster surface
BUG=skia:
R=fmalita@google.com , bsalomon@google.com , fmalita@chromium.org
Author: reed@google.com
Review URL: https://codereview.chromium.org/351373005
2014-06-27 06:48:14 -07:00
reed
8c0c7b0bcd
remove unnecessary bitmapdevice references
...
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/354143004
2014-06-27 05:49:54 -07:00
reed
2a8ca93171
don't create explicit bitmapdevice when not needed
...
TBR=
Author: reed@google.com
Review URL: https://codereview.chromium.org/349213006
2014-06-26 22:12:09 -07:00
tfarina
11a005ee01
Promote SkInterpolator unit test to our tests driver.
...
BUG=None
TEST=make tests && out/Debug/tests -m Interpolator
R=mtklein@google.com , bsalomon@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/351713005
2014-06-26 13:07:05 -07:00
senorblanco
7bf1068473
Remove SkBicubicImageFilter, and all related tests.
...
Now that we have SkResizeImageFilter, and the bicubic
resizing is part of skia proper, there's no need for a
specialized image filter.
BUG=skia:
R=bsalomon@google.com
Author: senorblanco@chromium.org
Review URL: https://codereview.chromium.org/357793002
2014-06-25 14:39:06 -07:00
tfarina
12345aee12
Rename TestSize.cpp to SizeTest.cpp
...
It is the only file where Test is the prefix rather than the sufix.
This patch fixes that so it matches with the rest of the files
under tests/ directory.
And separate SkISize test into its own DEF_TEST().
BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/337783007
2014-06-25 10:39:02 -07:00
caryclark
66a5d8bf13
add path dump test
...
Add a unit test for SkPath::dump(). The unit test exposed a minor
bug (inconsistent CRs) and an unused parameter (title).
R=bsalomon@google.com
TBR=bsalomon
BUG=skia:1836
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/351833003
2014-06-24 08:30:18 -07:00
Mike Klein
c11530ea73
Tick off some TODOs:
...
- support fRecord in copy constructor
- support SkDrawPictureCallback
Moved SkDrawPictureCallback to its own header so
SkRecordDraw can include it without pulling in all of
SkPicture.
Adding an SkAutoSaveRestore to SkRecordDraw was the easiest
way to match the balance guarantees of the callback, and
probably not a bad idea in general. Updated its tests.
BUG=skia:
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/349973008
2014-06-24 11:29:06 -04:00
caryclark
a8d2ffb1c2
add pathops tight bounds; conform path ops' gyp to unit tests
...
Implement path tight bounds using path ops machinery. This is not
as efficient as it could be; for instance, internally, it creates
a path ops structure more suited to intersection. If this shows
up as a performance bottleneck, it could be improved.
Fix path ops gyp files, which have fallen out of sync with other
tests.
R=mtklein@google.com , bsalomon@google.com
TBR=mtklein
BUG=skia:1712
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/348343002
2014-06-24 07:55:12 -07:00
tfarina
9ea53f93e7
Preprend Test to test function name generated by DEF_TEST() macro.
...
That way when declaring a test with DEF_TEST() macro, you don't have to
uniquify the test name because it might colide with the class it is
being testing.
For example, if you are testing SkBase64 and do:
DEF_TEST(SkBase64, reporter) {
}
That will generate an error because the macro will declare a function
named SkBase64 which colides with the type SkBase64.
By adding Test to the function name we avoid this problem.
Fixed the entries found with the following command line:
$ git grep "Test, r" | grep DEF
BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/345753007
2014-06-24 06:50:39 -07:00
Mike Klein
6fc763e3c2
No one uses SkPicture::swap.
...
BUG=skia:
R=robertphillips@google.com
Review URL: https://codereview.chromium.org/349313004
2014-06-23 15:29:52 -04:00
tfarina
bcbc1788b4
Refactor how we handle resources path in Tests.
...
This idea emerged while doing https://codereview.chromium.org/321723002/
(commit 880914c35c
).
BUG=None
TEST=make tests && out/Debug/tests
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/346453002
2014-06-18 14:32:49 -07:00
mtklein
30e6e2af14
Add basic stacktrace handler using libunwind.
...
This means we will all have to apt-get install libunwind8-dev on Linux. Mac comes with everything we need already.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/343583005
2014-06-18 11:44:18 -07:00
caryclark
e4097e3a0b
Fix last pathops skp bug
...
This fixes the last bug discovered by iterating through the 800K
skp corpus representing the top 1M websites. For every clip on the
stack, the paths are replaced with the pathop intersection. The
resulting draw is compared with the original draw for pixel errors.
At least two prominent bugs remain. In one, the winding value is
confused by a cubic with an inflection. In the other, a quad/cubic
pair, nearly coincident, fails to find an intersection.
These minor changes include ignoring very tiny self-intersections
of cubics, and processing degenerate edges that don't connect to
anything else.
R=reed@android.com
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/340103002
2014-06-18 07:24:19 -07:00
humper
4a24cd8ff4
Fifth attempt to land faster rect blur. Remove unnecessary conditionals from the shader.
...
approved over in https://codereview.chromium.org/331863006/ ; reuploading
because it had the wrong base url
BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon
Author: humper@google.com
Review URL: https://codereview.chromium.org/341543005
2014-06-17 13:39:31 -07:00
mtklein
887f3979f0
Add EXPERIMENTAL_beginRecording() for SkRecord-based recording.
...
The interesting stuff is in SkPictureRecorder.{h,cpp}. The rest is mostly moving SkRecord from its own directories into core to avoid circular dependencies in GYP.
After plumbing SkRecord all the way through in Picture, I'll delete its old entry point include/record/SkRecording.h. For now it and record.gypi need to stay where they are to keep Chrome building.
BUG=skia:
R=reed@google.com , mtklein@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/331573004
2014-06-17 12:08:16 -07:00
reed
c3b3266b7d
hide SkBitmap::Config entirely (behind a flag)
...
patch from issue 339463002
TBR=
I think the NoGPU failure is unrelated, so ignoring
NOTRY=True
Author: reed@google.com
Review URL: https://codereview.chromium.org/340533002
2014-06-17 08:38:31 -07:00
caryclark
dac1d17027
Enabling the canvas bit to turn the clip stack into a flat replace exposed around 100 failures when testing the 800K skp set generated from the top 1M web sites.
...
This fixes all but one of those failures.
Major changes include:
- Replace angle indices with angle pointers. This was motivated by the need to add angles later but not renumber existing angles.
- Aggressive segment chase. When the winding is known on a segment, more aggressively passing that winding to adjacent segments allows fragmented data sets to succeed.
- Line segments with ends nearly the same are treated as coincident first.
- Transfer partial coincidence by observing that if segment A is partially coincident to B and C then B and C may be partially coincident.
TBR=reed
Author: caryclark@google.com
Review URL: https://codereview.chromium.org/272153002
2014-06-17 05:15:38 -07:00
reed
0689d7b12e
stop using SkBitmap::Config
...
R=scroggo@google.com
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/338493005
2014-06-14 05:30:20 -07:00
reed
bfefc7c95f
hide Config in SkImageDecoder -- use SkColorType instead
...
patch from issue 334613003
TBR=scroggo
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/334793002
2014-06-12 17:40:00 -07:00
scroggo
e07c1ab408
Revert of third try at landing improved blur rect; this time with more correctness ( https://codereview.chromium.org/331443003/ )
...
Reason for revert:
Failing layout test: https://storage.googleapis.com/chromium-layout-test-archives/WebKit_Linux/32762/layout-test-results/virtual/gpu/fast/canvas/canvas-draw-canvas-on-canvas-shadow-pretty-diff.html
Original issue's description:
> third try at landing improved blur rect; this time with more correctness
>
> BUG=skia:2095
> R=bsalomon@google.com
> TBR=bsalomon
>
> Committed: https://skia.googlesource.com/skia/+/72abfc2b4e7caead660f6b6a05e60d05eaf1a66f
R=bsalomon@google.com , reed@google.com , humper@google.com
TBR=bsalomon@google.com , humper@google.com , reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2095
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/333763002
2014-06-12 12:10:24 -07:00
tfarina
da4ed3289e
Cleanup: Delete sk_tools::make_filepath() in favor of SkOSPath::SkPathJoin().
...
BUG=None
TEST=make tools tests && out/Debug/tests
R=epoger@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/327403002
2014-06-12 08:50:56 -07:00
humper
72abfc2b4e
third try at landing improved blur rect; this time with more correctness
...
BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon
Author: humper@google.com
Review URL: https://codereview.chromium.org/331443003
2014-06-11 12:42:49 -07:00
krajcevski
2b310e46eb
Texture compression unit tests along with a couple of bug fixes
...
R=robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/330453005
2014-06-11 12:26:49 -07:00
robertphillips
0bdbea75ff
Remove picture pre-allocation from SkPictureRecorder
...
This CL improves the separation of the SkPicture and SkPictureRecord classes. It delays creation of the SkPicture (in SkPictureRecorder) until recording is actually completed. To accomplish this the SkRecord-derived classes now get SkPathHeap and SkPictureContentInfo members that are absorbed by the SkPicture when it is constructed.
As an ancillary change, this CL also moves the SkPictureContentInfo object from SkPicture to SkPicturePlayback. This is intended to centralize all the data in the SkPicturePlayback object.
R=mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/324293004
2014-06-11 11:37:55 -07:00
tfarina
1c99ea8ed8
Cleanup: Delete sk_tools::get_basename() in favor of SkOSPath::SkBasename().
...
BUG=None
TEST=make tests && out/Debug/tests
R=epoger@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/321693002
2014-06-11 08:58:50 -07:00
reed
b0b1aa04ed
Revert of second try at landing improved blur rect ( https://codereview.chromium.org/325703002/ )
...
Reason for revert:
broke some fast/canvas layout tests
Original issue's description:
> second try at landing improved blur rect
>
> BUG=skia:2095
> TBR=bsalomon
>
> Committed: https://skia.googlesource.com/skia/+/e9ea0d6b7d59ac3b7e257281e545b24bcc0d2a76
R=bsalomon@google.com , reed@chromium.org , humper@google.com
TBR=bsalomon@google.com , humper@google.com , reed@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2095
Author: reed@google.com
Review URL: https://codereview.chromium.org/322423002
2014-06-11 07:26:23 -07:00
robertphillips
9058d602d0
Fix error revealed by Android unit test
...
The issue is/was that the original Picture/PictureRecorder that is being partially replayed is not guaranteed to issue any more commands before attempting to modify the existing data. Such modification is prohibited if there is a extant copy-on-write snapshot. Rather then further complicate the SkWriter32::snapshot capability for a dis-preferred use case, this CL simply copies the operation data.
R=scroggo@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/316063005
2014-06-10 11:45:46 -07:00
reed
6c22573edb
hide SkBitmap::setConfig
...
patch from issue 325733002
TBR=scroggo
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/322963002
2014-06-09 19:52:07 -07:00
humper
e9ea0d6b7d
second try at landing improved blur rect
...
BUG=skia:2095
R=bsalomon@google.com
TBR=bsalomon
Author: humper@google.com
Review URL: https://codereview.chromium.org/325703002
2014-06-09 14:35:21 -07:00
tfarina
880914c35c
Reland "Clean up Test's resourcePath code."
...
This relands commit 91359bed48
(Clean up
Test's resourcePath code."
BUG=None
TEST=make dm && out/Debug/dm
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/321723002
2014-06-09 12:05:34 -07:00
cdalton
511923443f
Generate path names on the client side
...
Pre-allocates a range of path names and manages allocations within
that range on the client side. This allows us to generate new path
objects in a feed-forward manner that doesn't require round trips to
the GL server.
BUG=skia:
R=bsalomon@google.com , markkilgard@gmail.com
Author: cdalton@nvidia.com
Review URL: https://codereview.chromium.org/304403003
2014-06-09 11:16:58 -07:00
robertphillips
9f1c241e0d
Remove SkPicture::kUsePathBoundsForClip_RecordingFlag
...
The real question is whether we ever want to record a picture without using the path bounds for a conservative (but faster) clip answer?
R=reed@google.com , mtklein@google.com , djsollen@google.com , scroggo@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/316143003
2014-06-09 06:25:34 -07:00
robertphillips
e2f2b98444
No longer limit SkPictureRecorder::partialReplay to Android
...
Toggling this for local testing is a bit of a chore.
R=mtklein@google.com , reed@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/316173004
2014-06-08 13:12:44 -07:00
mtklein
91359bed48
Revert of Clean up Test's resourcePath code. ( https://codereview.chromium.org/319473003/ )
...
Reason for revert:
Some benchmarks are written in a way that makes this change unsafe (e.g. const char* resPath = GetResourcePath().c_str(); in SkipZeroesBench) and Valgrind and ASAN caught that. We can try again after a more careful cleanup of GetResourcePath().
Original issue's description:
> Clean up resourcePath code.
>
> 1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
> 2) Make gResourcePath a static pointer to const char and move it inside the classes.
>
> BUG=None
> TEST=make tests && out/Debug/tests
> make gm && out/Debug/gm
> make bench && out/Debug/bench
> R=mtklein@google.com
>
> Committed: https://skia.googlesource.com/skia/+/52e4f413ffe2d281f9e90ff2147db08083ffcba7
R=tfarina@chromium.org
TBR=tfarina@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=None
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/320733002
2014-06-08 07:02:47 -07:00
tfarina
52e4f413ff
Clean up resourcePath code.
...
1) Make the implementation of SetResourcePath/GetResourcePath of GM and SkBenchmark match with the one in Test.
2) Make gResourcePath a static pointer to const char and move it inside the classes.
BUG=None
TEST=make tests && out/Debug/tests
make gm && out/Debug/gm
make bench && out/Debug/bench
R=mtklein@google.com
Author: tfarina@chromium.org
Review URL: https://codereview.chromium.org/319473003
2014-06-07 20:50:44 -07:00
jvanverth
d78a2fac37
Rollback of fe689c46
and all subsequent changes
...
BUG=skia:
R=humper@google.com
TBR=humper@google.com
NOTRY=True
NOTREECHECKS=True
Author: jvanverth@google.com
Review URL: https://codereview.chromium.org/324463005
2014-06-06 13:40:36 -07:00
humper
da1c00914e
disable GPU/CPU blur match test (possibly temporary)
...
BUG=skia:
TBR=jvanverth
NOTRY=True
NOTREECHECKS=True
Author: humper@google.com
Review URL: https://codereview.chromium.org/322593002
2014-06-06 11:37:24 -07:00
krajcevski
c250d2e4ab
Initial KTX encoder
...
The encoder comes with tests to check that the encoding/decoding
operations between ETC encoded bitmaps and ARGB bitmaps are sane.
R=bsalomon@google.com , robertphillips@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/312353003
2014-06-06 06:16:28 -07:00
robertphillips
c2fce56522
Add bench for rectanizers
...
R=bsalomon@google.com , jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/319523003
2014-06-05 07:18:03 -07:00
robertphillips
9b14f26d0f
Alter SkCanvas::drawPicture (devirtualize, take const SkPicture, take pointer)
...
R=reed@google.com , bsalomon@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/313613004
2014-06-04 05:40:44 -07:00
scroggo
65044bfe02
Return NULL when building empty LayerRasterizer.
...
In SkLayerRasterizer::snapshotRasterizer() and ::detachRasterizer(),
if no layers have been added, do not attempt to create an
SkLayerRasterizer. Instead, return NULL.
This fixes an error when running tests on Android.
Update dox to state that NULL may be returned.
Add tests.
R=reed@google.com
Author: scroggo@google.com
Review URL: https://codereview.chromium.org/313653006
2014-06-03 13:12:51 -07:00
krajcevski
99ffe24200
Initial KTX file decoder
...
R=bsalomon@google.com , robertphillips@google.com , halcanary@google.com , reed@google.com
Author: krajcevski@google.com
Review URL: https://codereview.chromium.org/302333002
2014-06-03 13:04:35 -07:00
reed
868074b50b
remove SkBounder -- unused and unloved
...
BUG=skia:
R=scroggo@google.com
Author: reed@google.com
Review URL: https://codereview.chromium.org/312553006
2014-06-03 10:54:00 -07:00
robertphillips
dcf9ab14a1
Remove legacy picture recording
...
This is unblocked now that Android no longer uses the old interface.
This is just the first step in cleaning this up. Future CLs will constify SkPicture access in SkCanvas and split up the SkPicture/SkPicturePlayback/SkPictureRecord trio.
R=bsalomon@google.com , reed@google.com , mtklein@google.com
Author: robertphillips@google.com
Review URL: https://codereview.chromium.org/313613002
2014-06-03 10:04:47 -07:00
mtklein
1b81877880
Clean up SkOnce:
...
1 Remove atExit feature: clients can do it just as well as SkOnce can.
2 Remove support for functors: no one but the unit test did that.
3 Remove support for unused non-static SkOnceFlag (no SK_ONCE_INIT).
4 Add SkOnce variants for no-arg functions so we're not forced to pass dummy values all the time.
5 Merge SkSpinlock and SkOnceFlag, making all members private.
6 More notes about memory barriers, adding an acquire load after acquiring the spinlock.
BUG=skia:
R=bungeman@google.com , mtklein@google.com , reed@google.com
Author: mtklein@chromium.org
Review URL: https://codereview.chromium.org/302083003
2014-06-02 11:26:59 -07:00