Commit Graph

27383 Commits

Author SHA1 Message Date
Mike Klein
06432b26c6 ok
Change-Id: I9d01656a9d9b7aa3ab352dd4c168b26da620a903
Reviewed-on: https://skia-review.googlesource.com/9978
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-03-23 18:04:36 +00:00
Mike Reed
02be3c1c3f add test and fix for canvas::isClipEmpty
BUG=skia:

Change-Id: I4e57e0da7111e861fbae1b88574bc1803442243c
Reviewed-on: https://skia-review.googlesource.com/10046
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-03-23 17:26:34 +00:00
Robert Phillips
78075804c1 Make SkGr.h GrTexture-free
Minor cleanup.

Change-Id: Ide69516c686450e6441368382c86444da6a74937
Reviewed-on: https://skia-review.googlesource.com/9950
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-23 16:06:04 +00:00
Brian Salomon
e01187e059 Fix MSAN issue found by fuzzer in GrStencilSettings::operator==
Change-Id: Iebe46b1ec79f7746631cf1836b896d1a39b30d08
Reviewed-on: https://skia-review.googlesource.com/10029
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-03-23 15:45:57 +00:00
Greg Daniel
468fd63760 In vulkan align data in buffer when copying to image
BUG=skia:

Change-Id: If99ba2797dfca547ce98cd9c1a1f1c234cf8791e
Reviewed-on: https://skia-review.googlesource.com/10027
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-03-23 15:31:00 +00:00
Matt Sarett
a88a646b37 Override onImageInfo() in SkColorSpaceXformCanvas
Fixes the gamut gm in gbr modes and maybe others.

BUG=skia:

Change-Id: I341f8fe795860862158a823c99efddaa4478a3a7
Reviewed-on: https://skia-review.googlesource.com/10040
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-23 15:17:29 +00:00
Brian Osman
3bc9bfea5e Remove texture sampling from GrConfigConversionEffect
BUG=skia:

Change-Id: If5df087d3fe11098f468deab5f2fc8beb782cc83
Reviewed-on: https://skia-review.googlesource.com/10026
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-03-23 15:05:00 +00:00
Derek Sollenberger
3849b64cbb Only perform SkSafeRef race detection if on android framework
Change-Id: If524a02e916d711057d6f2102efb0404b1c0b988
Reviewed-on: https://skia-review.googlesource.com/10036
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-03-23 14:32:47 +00:00
Derek Sollenberger
6dd88144d5 Make reference counted assignment check for races.
If SkRefCnt_SafeAssign is erroneously invoked simultaneously by two
threads on the same destination, a likely outcome is that the
reference count of an object other than the replaced dst will
be decremented. This results in an extra reference count decrement,
which usually means that the final reference count decrement will
be applied to a random location in an object that has already been
reallocated.  This is exceedingly hard to debug.

We add a hack to detect such data races with sufficiently high
probability, so that such a data race bug should sometimes actually
generate bug reports that lend themselves to diagnosis.

We detect changes within a relatively larger range that normally
includes several (typically slow) memory fences.  Not all such changes
would provoke a crash. Even if we decrement the wrong reference count,
there's a chance we would decrement a dead location. Thus, to
avoid potentially adding instability, we currently only log.

This change tries to minimize additional runtime overhead.
The macro is only expanded a few dozen times, so we do not worry too
much about code size.

Bug: b/31227650
Change-Id: Ia40c9ed2c4d0fa578ea682fbec4b71a2ef22a5d1
Reviewed-on: https://skia-review.googlesource.com/9994
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-03-23 14:16:34 +00:00
Mike Klein
ec3bdbb639 Turn on x86-specific code when building zlib.
The zlib source we DEPS in for testing has been patched with x86
optimizations, some requring SSE2, some SSE4.2, and some PCLMULQDQ
(between SSE4.2 and AVX).

Might as well turn them on?

zlib actually boils everything down into one do-we-have-everything bit.
That's a little weird... I don't see any real reason not to use
fill_window_sse() on a machine with SSE2 but not SSE4.2.  Whatever.

While tweaking libpng settings is really where it's at to make PNG
encoding faster, this is kind of a nice little cherry on top.  Won't
help people who are using their own zlib, of course.

BUG=skia:6409

Change-Id: I459689069f7559365a66d0d29b33664907704d8e
Reviewed-on: https://skia-review.googlesource.com/10033
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2017-03-23 13:36:31 +00:00
Robert Phillips
4f358be6b7 Make SkImageCacherator be deferred (take 2)
Split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

This is a second pass at: https://skia-review.googlesource.com/c/9945/ (Make SkImageCacherator be deferred)

Change-Id: I3451383eed497d1235686e8961087859c7c7bd30
Reviewed-on: https://skia-review.googlesource.com/10034
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-23 13:10:45 +00:00
Matt Sarett
5df93de8ad Revert "Revert "Add support for writing icc profiles to the jpeg encoder""
This reverts commit dda14b9b7a.

Reason for revert: <INSERT REASONING HERE>

Original change's description:
> Revert "Add support for writing icc profiles to the jpeg encoder"
> 
> This reverts commit 4ef0148202.
> 
> Reason for revert: This breaks the android autoroller.
> 
> Original change's description:
> > Add support for writing icc profiles to the jpeg encoder
> > 
> > Also, share the impl for skjpeg_error_mgr between the
> > jpeg decoder and encoder.  They are already identical
> > anyway.
> > 
> > BUG=skia:
> > 
> > Change-Id: I4d67f28126388fef3057d62b6e0b203e21ed4afb
> > Reviewed-on: https://skia-review.googlesource.com/10011
> > Reviewed-by: Leon Scroggins <scroggo@google.com>
> > Commit-Queue: Matt Sarett <msarett@google.com>
> > 
> 
> TBR=msarett@google.com,scroggo@google.com,reviews@skia.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
> 
> Change-Id: Idbb9918370e8384e39d6b7d1c3bcd9545ce4cfd1
> Reviewed-on: https://skia-review.googlesource.com/10017
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Derek Sollenberger <djsollen@google.com>
> 

TBR=djsollen@google.com,msarett@google.com,scroggo@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: I9c1df3f497a9187ac017e464976fd8f0333bad0e
Reviewed-on: https://skia-review.googlesource.com/10030
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-22 21:52:57 +00:00
Kevin Lubick
4610a9b3c1 Consolidate Linux GCE dimensions
It appears we were not setting the CPU for our Build
Tasks, which confused our capacity metrics.


BUG=skia:

Change-Id: I60cbe3b99b9de6865141f124df5618975bf65a05
Reviewed-on: https://skia-review.googlesource.com/10020
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2017-03-22 21:33:16 +00:00
Brian Salomon
4b33ef643e Disable msaa configs on Intel
Change-Id: Ia66fa9c27ca2e5b7193b727c30bc0cf836a51c6d
Reviewed-on: https://skia-review.googlesource.com/10023
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-03-22 21:28:44 +00:00
Greg Daniel
84cff13a08 Disable dual source blending on AMD vulkan.
BUG=skia:6405

Change-Id: I63b60135f1562a4ce1f1a37b719aa01fc62d8790
Reviewed-on: https://skia-review.googlesource.com/9984
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2017-03-22 21:11:04 +00:00
Greg Daniel
22bc8653d7 Add AMD work around in Vulkan to create a new secondary command buffer
whenever we change the VkPipeline. All these secondary CBs are still
submitted within one render pass.

This works around the amd bug linked in the bug below. It will probably
cause a slight performance hit, so I will track it on perf and revert if
the hit is significant.

BUG=skia:6406

Change-Id: I48ff39ab36cfa96a67397f745ff65fe8b199f02b
Reviewed-on: https://skia-review.googlesource.com/9987
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2017-03-22 20:24:31 +00:00
Brian Salomon
5e150851d0 Revert "Revert "Add a new GrResourceCache purging mechanism for purging unused resources.""
This reverts commit 20c322ef0c.

Change-Id: I6df9a8594484837672308dc2c21c7c29b76ffa2c
Reviewed-on: https://skia-review.googlesource.com/10013
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2017-03-22 20:08:21 +00:00
Lee Salzman
b8e752198d fix round_asymmetric_to_int to also bias bottom and right
BUG=skia:6294

Change-Id: I1ee1031f1fb7cb035916e8945ce5396759955885
Reviewed-on: https://skia-review.googlesource.com/9700
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2017-03-22 19:30:30 +00:00
Brian Osman
ce425510a0 Add Swizzle FP, and remove swizzle logic from GrConfigConversionEffect
Trying to decompose read/writePixels into some reusable chunks.

BUG=skia:5853

Change-Id: If08b004b008e8ca7d464d9dc47068e487bae850a
Reviewed-on: https://skia-review.googlesource.com/10015
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-03-22 19:16:30 +00:00
Derek Sollenberger
dda14b9b7a Revert "Add support for writing icc profiles to the jpeg encoder"
This reverts commit 4ef0148202.

Reason for revert: This breaks the android autoroller.

Original change's description:
> Add support for writing icc profiles to the jpeg encoder
> 
> Also, share the impl for skjpeg_error_mgr between the
> jpeg decoder and encoder.  They are already identical
> anyway.
> 
> BUG=skia:
> 
> Change-Id: I4d67f28126388fef3057d62b6e0b203e21ed4afb
> Reviewed-on: https://skia-review.googlesource.com/10011
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com,scroggo@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: Idbb9918370e8384e39d6b7d1c3bcd9545ce4cfd1
Reviewed-on: https://skia-review.googlesource.com/10017
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-03-22 18:54:30 +00:00
Greg Daniel
70131b97f9 Fix SkTArray operator= to work with self assignment
BUG=skia:

Change-Id: I2a403a7ccbb87a030757f3e57d2ea53503f72512
Reviewed-on: https://skia-review.googlesource.com/10012
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-03-22 18:33:19 +00:00
Greg Daniel
dbd11ec106 Init Command buffer on inlineUploads in Vulkan
When the first thing we do in a GrGpuCommandBuffer is do an inlineUpload,
we need to make sure we've initialized the command buffer in Vulkan.

BUG=skia:

Change-Id: Iabee770864a61697c55fb1df18b31862d8df3cdc
Reviewed-on: https://skia-review.googlesource.com/9970
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2017-03-22 18:23:41 +00:00
Robert Phillips
e3060ba87c Revert "Make SkImageCacherator be deferred"
This reverts commit 801f8b824f.

Reason for revert: Failures on Tegra3-based Android devices (so, npot issues)

Original change's description:
> Make SkImageCacherator be deferred
> 
> Split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)
> 
> Change-Id: I16cf0aea9d887e5ebe053e9b5c94a970dc254beb
> Reviewed-on: https://skia-review.googlesource.com/9945
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ib143ef86cfad4a221e25145679ba7e48f6f7f3ba
Reviewed-on: https://skia-review.googlesource.com/9949
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 18:13:42 +00:00
Mike Klein
33d2055e59 GM: some header cleanup
gm.h includes sk_tool_utils.h but does not use it.

The bulk of this CL makes each gm that uses sk_tool_utils include it.

sk_tool_utils.h also provided SkRandom and SkTDArray,
so a couple GMs add those headers too.

Change-Id: Ieb2a7c542f0ca89c3223f744fc11b0ff37af36c1
Reviewed-on: https://skia-review.googlesource.com/10014
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
2017-03-22 18:11:49 +00:00
Matt Sarett
4ef0148202 Add support for writing icc profiles to the jpeg encoder
Also, share the impl for skjpeg_error_mgr between the
jpeg decoder and encoder.  They are already identical
anyway.

BUG=skia:

Change-Id: I4d67f28126388fef3057d62b6e0b203e21ed4afb
Reviewed-on: https://skia-review.googlesource.com/10011
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-22 17:34:32 +00:00
Robert Phillips
801f8b824f Make SkImageCacherator be deferred
Split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

Change-Id: I16cf0aea9d887e5ebe053e9b5c94a970dc254beb
Reviewed-on: https://skia-review.googlesource.com/9945
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 17:29:08 +00:00
Cary Clark
44c1b111c7 path hang
In release, path hangs because buffers overflow.
Debug shows that the clipped cubic generates 34 points although
a maximum of 32 are expected.

The path has very small numbers that fool MaxCurvature into
thinking that there are more places to break the cubic than
are necessary.

To make this bullet-proof, increase the verbs and points.

Allow (1 line + 1 cubic) * (3 x-pieces) * (3 y-pieces) == 18 verbs.
Allow (6 points for line + cubic + line) * 9 pieces    == 54 points.

R=reed@google.com,liyuqian@google.com
BUG=698714

Change-Id: I04fad10c151c79d0c53465a2b658aa4dd59f1c98
Reviewed-on: https://skia-review.googlesource.com/9983
Reviewed-by: Yuqian Li <liyuqian@google.com>
Commit-Queue: Cary Clark <caryclark@google.com>
2017-03-22 16:32:45 +00:00
Brian Osman
de1a605346 Support premul/unpremul of F16 during read/writePixels
Added PremulOutput and UnpremulOutput FP helpers. These are used
(rather than GrConfigConversionEffect) when working with FP16
textures (and will also be used for other configs that can't be
round-tripped via rounding).

BUG=skia:5853

Change-Id: I101592c26c4f0b379d5e5a8678ef7b2f08e6ad56
Reviewed-on: https://skia-review.googlesource.com/9980
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-03-22 16:31:39 +00:00
Brian Osman
ca0913ceb9 Further widen nondeterministic processor testing
Add in all Windows and Mac bots

BUG=skia:6395

Change-Id: Ib0d2b36330a44c7cb04833fad6d55b3aa884aafe
Reviewed-on: https://skia-review.googlesource.com/10007
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2017-03-22 16:27:18 +00:00
Derek Sollenberger
d68c41df1b Revert "Add support for writing icc profiles to the jpeg encoder"
This reverts commit e3b95ce468.

Reason for revert: This is breaking the Android auto roller. 

Original change's description:
> Add support for writing icc profiles to the jpeg encoder
> 
> Also, share the impl for skjpeg_error_mgr between the
> jpeg decoder and encoder.  They are already identical
> anyway.
> 
> BUG=skia:
> 
> Change-Id: I029312406dee8734744cc3058acd1f153aefcd83
> Reviewed-on: https://skia-review.googlesource.com/9971
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Matt Sarett <msarett@google.com>
> 

TBR=msarett@google.com,scroggo@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Change-Id: I05fb02610dbf4d9475f158d876d6495b0f7e9db4
Reviewed-on: https://skia-review.googlesource.com/10009
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-03-22 16:19:59 +00:00
Brian Salomon
d3b65972aa Mark overridden destructors with 'override' and remove 'virtual'
This silences a new warning in clang 5.0

Change-Id: Ieb5b75a6ffed60107c3fd16075d2ecfd515b55e8
Reviewed-on: https://skia-review.googlesource.com/10006
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
2017-03-22 16:06:18 +00:00
Robert Phillips
30a38ff737 Remove SkImage_Base::asTextureRef (in favor of asTextureProxyRef)
Minor consolidation/clean-up

Change-Id: I9f8ba794cfb95b33dd60ada0e734ddd2f5f21710
Reviewed-on: https://skia-review.googlesource.com/9947
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 15:45:43 +00:00
Matt Sarett
73879ebecb Improve color type handling in SkImage_Base::makeColorSpace()
Color space xforms  with Alpha8 images are no-ops.
Other xforms should use 8888 as dst color type.

BUG=skia:

Change-Id: Iede3d94d23c8f4c3dabdaa5450af7b5bfff8d24f
Reviewed-on: https://skia-review.googlesource.com/9996
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-22 15:31:11 +00:00
Mike Reed
2a65cc0ff1 test (and fix) clip_restriction in canvas
BUG=skia:

Change-Id: I86d25d0fd82be35d01471fba59f77b360be5373c
Reviewed-on: https://skia-review.googlesource.com/9995
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2017-03-22 14:59:56 +00:00
Brian Salomon
20c322ef0c Revert "Add a new GrResourceCache purging mechanism for purging unused resources."
This reverts commit fbb56ce83f.

Reason for revert: Chrome's ancient libstdc++ doesn't like use of steady_clock

Original change's description:
> Add a new GrResourceCache purging mechanism for purging unused resources.
> 
> The client may call GrContext::purgeResourceNotUsedSince() with a stead_clock::time_point and all resources that have been purgeable since before that time point are purged.
> 
> This is intended to replace the "max unused flushes" purging mechanism once Chrome adopts it.
> 
> Change-Id: I28881dd2959cc01c0acca81b2d6001ee5626439d
> Reviewed-on: https://skia-review.googlesource.com/8920
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Eric Karl <ericrk@google.com>
> 

TBR=bsalomon@google.com,robertphillips@google.com,ericrk@google.com,reviews@skia.org,ericrk@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I3baa3b2e80302315b757d4d625732459e13795d4
Reviewed-on: https://skia-review.googlesource.com/10004
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-03-22 14:59:07 +00:00
Brian Salomon
fbb56ce83f Add a new GrResourceCache purging mechanism for purging unused resources.
The client may call GrContext::purgeResourceNotUsedSince() with a stead_clock::time_point and all resources that have been purgeable since before that time point are purged.

This is intended to replace the "max unused flushes" purging mechanism once Chrome adopts it.

Change-Id: I28881dd2959cc01c0acca81b2d6001ee5626439d
Reviewed-on: https://skia-review.googlesource.com/8920
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Eric Karl <ericrk@google.com>
2017-03-22 14:42:11 +00:00
Matt Sarett
b667fe2f67 Small downsample_3_3 optimization
Just a little less math...

mipmap_build_2047x2047_0_gamma
Before: 15.8ms
After:  13.4ms

Hard to see much difference on the gamma correct
mips, which are more dominated by load time.

BUG=skia:

Change-Id: I978cbc85a7d75cfcca2d5cd3fbc75e93413782f2
Reviewed-on: https://skia-review.googlesource.com/9988
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-22 14:39:17 +00:00
Ravi Mistry
a2eb235a16 Skia Gerrit 10k!
BUG=skia:
NOTRY=true

Change-Id: I37876c6f62c85d0532b22dcf8bea8b4e7f4147c0
Reviewed-on: https://skia-review.googlesource.com/10000
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2017-03-22 14:37:06 +00:00
Robert Phillips
fde9bff19c Revert "Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag"
This reverts commit c3efe67856.

Reason for revert: RenderNodeDrawableTests.cpp

Original change's description:
> Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag
> 
> Android has been updated to use the new signature so this should no longer be needed
> 
> Change-Id: Id745191e815381d032aba6a49bf4baf9c53b2385
> Reviewed-on: https://skia-review.googlesource.com/9985
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> 

TBR=djsollen@google.com,robertphillips@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: I0211342b237373fe40d205bb18bbef5efce56bf3
Reviewed-on: https://skia-review.googlesource.com/9946
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 14:18:15 +00:00
Matt Sarett
e3b95ce468 Add support for writing icc profiles to the jpeg encoder
Also, share the impl for skjpeg_error_mgr between the
jpeg decoder and encoder.  They are already identical
anyway.

BUG=skia:

Change-Id: I029312406dee8734744cc3058acd1f153aefcd83
Reviewed-on: https://skia-review.googlesource.com/9971
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-22 13:57:58 +00:00
Robert Phillips
c3efe67856 Remove Android-specific SK_SUPPORT_LEGACY_IMG_SNAPSHOT flag
Android has been updated to use the new signature so this should no longer be needed

Change-Id: Id745191e815381d032aba6a49bf4baf9c53b2385
Reviewed-on: https://skia-review.googlesource.com/9985
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 13:13:14 +00:00
Robert Phillips
0ae6faa34d Make SkImage_Gpu be deferred (take 2)
This CL removes the GrTexture-based ctor forcing everyone to create deferred SkImage_Gpus.

relanding of: https://skia-review.googlesource.com/c/6680/ (Make SkImage_Gpu be deferred)

split out into:
https://skia-review.googlesource.com/c/9106/ (Remove atlas creation from GrResourceProvider)

Change-Id: I834ede430b9706cf9b675bdfdddf1c8c624c2f14
Reviewed-on: https://skia-review.googlesource.com/9965
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-22 11:52:16 +00:00
Brian Salomon
54d212e1bf Revert "Revert "Remove GrPipeline from GrDrawOp.""
This reverts commit c48af93460.

Change-Id: I4ba78fd7e5a7d406b88223ca6f7245c029b60f76
Reviewed-on: https://skia-review.googlesource.com/9981
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2017-03-21 23:55:32 +00:00
Brian Salomon
337432dc09 In GrRenderTargetOpList::forwardCombine check adjacent ops
Clears can combine in ways that make it possible to get a combination with an adjacent op in the forward pass.

Change-Id: I39342bbf16fec9b08347652c6e65840ea28f660b
Reviewed-on: https://skia-review.googlesource.com/9972
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2017-03-21 22:10:33 +00:00
Hal Canary
27ecd86b61 SkImageSource::Make() returns nullptr when srcrect is empty.
BUG=skia:6389
Change-Id: Ia995da1f70cbbc0c80ab76385f0ea8cc0d48fa07
Reviewed-on: https://skia-review.googlesource.com/9943
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-03-21 22:04:36 +00:00
Mike Reed
ebbdec4622 document when we retired a serialized verb -- for later removal
BUG=skia:

Change-Id: I86a077080f350a900ad6605efb3b034204dd636a
Reviewed-on: https://skia-review.googlesource.com/9964
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-03-21 21:16:24 +00:00
Hal Canary
5aa9158a24 FuzzCanvas: NullGL & DebugGL
Change-Id: I369750c5614ee3b632ff33c82e04125e7c2dfefd
Reviewed-on: https://skia-review.googlesource.com/9942
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2017-03-21 20:30:38 +00:00
Robert Phillips
bbd7a3be40 Make experimental Perlin noise shader take texture proxies
This is split out of: https://skia-review.googlesource.com/c/8823/ (Remove GrFragmentProcessor-derived class' GrTexture-based ctors)

Change-Id: I18c444981f5c72e9688866e045c90844bc4945b1
Reviewed-on: https://skia-review.googlesource.com/9917
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2017-03-21 19:38:55 +00:00
Hal Canary
7322b52e61 C API: document sk_matrix_t
Change-Id: I8f35868de6ef7d541cc3c9bcaddad4871bf8d6eb
Reviewed-on: https://skia-review.googlesource.com/2590
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2017-03-21 18:04:34 +00:00
Matt Sarett
3adf1c3b94 Run discardable test bots as single-threaded
This should fix any flakiness caused by dynamically exceeding memory
limits.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-SK_USE_DISCARDABLE_SCALEDIMAGECACHE

BUG=skia:4703

Change-Id: Ifd581539bacdb25a5f2f8f994c6c119d5576e294
Reviewed-on: https://skia-review.googlesource.com/9977
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-03-21 18:03:18 +00:00