platform/upstream/libSkiaSharp.git
7 years agoAdd the ability to enable/disable GPU path renderers
csmartdalton [Wed, 22 Feb 2017 19:00:42 +0000 (12:00 -0700)]
Add the ability to enable/disable GPU path renderers

Adds a bitfield to GrContextOptions that masks out path renderers.
Adds commandline flags support to set this bitfield in tools apps.
Removes GrGLInterfaceRemoveNVPR since we can now accomplish the same
thing in the context options.

BUG=skia:

Change-Id: Icf2a4df36374b3ba2f69ebf0db56e8aedd6cf65f
Reviewed-on: https://skia-review.googlesource.com/8786
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>

7 years agoFix SkSemaphore comments.
Mike Klein [Wed, 22 Feb 2017 19:33:12 +0000 (14:33 -0500)]
Fix SkSemaphore comments.

Change-Id: I14fc03fcb73bad61daed7c4cd3ed12bfae6b1217
Reviewed-on: https://skia-review.googlesource.com/8880
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSkJumper: add mode to help prioritize porting
Mike Klein [Wed, 22 Feb 2017 19:04:38 +0000 (14:04 -0500)]
SkJumper: add mode to help prioritize porting

Change-Id: I57c9fa4ce3ef70ddd8a98b0a5843d1f5108fe6e8
Reviewed-on: https://skia-review.googlesource.com/8857
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSkJumper: set_rgb and swap_rb
Mike Klein [Wed, 22 Feb 2017 19:17:32 +0000 (14:17 -0500)]
SkJumper: set_rgb and swap_rb

swap_rb is a big limiting factor on Windows and Linux.
set_rgb just happened to be nearby and easy.

Change-Id: Ic529c7578eeb278476821090127fa8fb1f70c04f
Reviewed-on: https://skia-review.googlesource.com/8859
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoUpdate endRecordingAsPicture to finishRecordingAsPicture
Yuqian Li [Wed, 22 Feb 2017 18:12:30 +0000 (13:12 -0500)]
Update endRecordingAsPicture to finishRecordingAsPicture

BUG=skia:

DOCS_PREVIEW= https://skia.org/?cl=8854

Change-Id: Ia3ad32d088d44fbe47ec37de016931c4bd21231c
Reviewed-on: https://skia-review.googlesource.com/8854
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Yuqian Li <liyuqian@google.com>

7 years agoMake GrPipelineAnalysis a nested class of GrProcessorSet.
Brian Salomon [Wed, 22 Feb 2017 16:52:03 +0000 (11:52 -0500)]
Make GrPipelineAnalysis a nested class of GrProcessorSet.

It is renamed to FragmentProcessorAnalysis since it represents the outputs of the final FPs.

It now stores the analysis results that are subsequently needed rather than exposing GrProcOptInfo.

GrProcOptInfo is now only used on color FPs (not coverage).

Miscellaneous related renamings.

Change-Id: I95c518a7a76df6dc294a9fa67c611f8f653247bc
Reviewed-on: https://skia-review.googlesource.com/8534
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agohide trivial helpers on canvas
Mike Reed [Wed, 22 Feb 2017 18:21:42 +0000 (13:21 -0500)]
hide trivial helpers on canvas

BUG=skia:

Change-Id: I42d4ca92897bde5bd8e0575a0104b12b83134cef
Reviewed-on: https://skia-review.googlesource.com/8852
Reviewed-by: Cary Clark <caryclark@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkJumper: implement lerp_u8
Mike Klein [Wed, 22 Feb 2017 18:52:40 +0000 (13:52 -0500)]
SkJumper: implement lerp_u8

Going to start filling these in in biggest-bang-for-the-buck order.
lerp_u8 (i.e. text drawing) is number 1 right now.

Change-Id: If58eaf8ddbb93a6b954c3700fa1a476dca94a809
Reviewed-on: https://skia-review.googlesource.com/8856
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAttempt to stabilize shadow_utils GM for replay configs
Brian Salomon [Wed, 22 Feb 2017 18:49:09 +0000 (13:49 -0500)]
Attempt to stabilize shadow_utils GM for replay configs

Change-Id: I0ed15ab102fa1e0a364d5f3a953bedd8afbda3c3
Reviewed-on: https://skia-review.googlesource.com/8853
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoEnable legacy premuls in SkColorSpaceXform
Matt Sarett [Wed, 22 Feb 2017 18:02:31 +0000 (13:02 -0500)]
Enable legacy premuls in SkColorSpaceXform

***Will allow for simplified Android framework code, they typically
   want a color correct transform followed by a gamma encoded premul.
***Chrome does the same, so this will make it easier to replace their
   codecs.
***Will decrease code size.  Both types of premuls are moved off the
   fast path here - one is essentially unused in production and the
   other is not "encouraged".
***Will actually make the common case faster: sRGB->sRGB means no
   color xform, just premul in SkSwizzler.

BUG=skia:

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD

Change-Id: Ia4ec1d273b6f137151f951d37c0ebf975f6b9a3e
Reviewed-on: https://skia-review.googlesource.com/8848
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoSwitch SkTaskGroup to std::atomic.
Mike Klein [Wed, 22 Feb 2017 18:00:33 +0000 (13:00 -0500)]
Switch SkTaskGroup to std::atomic.

No interesting change, just getting on std APIs.

Change-Id: I0f42cbb6854b49a6ae8266e5b92f977d27f4e032
Reviewed-on: https://skia-review.googlesource.com/8860
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agofix typo in SkTaskGroup.h
Mike Klein [Wed, 22 Feb 2017 17:49:29 +0000 (12:49 -0500)]
fix typo in SkTaskGroup.h

This was meant to stay -1 (num_cores() threads) not to become 1 (1 thread).

Change-Id: Ib9b8e1963c0cd16d4c0aba02ccf7a65890a5ef78
Reviewed-on: https://skia-review.googlesource.com/8851
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd new GMs to stress rendering of many circles and rrects
Jim Van Verth [Tue, 21 Feb 2017 22:55:13 +0000 (17:55 -0500)]
Add new GMs to stress rendering of many circles and rrects

Change-Id: I060419bc39484b379329a1691e199d9d3db9c808
Reviewed-on: https://skia-review.googlesource.com/8807
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoremove device field from SkDraw
Mike Reed [Wed, 22 Feb 2017 16:01:08 +0000 (11:01 -0500)]
remove device field from SkDraw

BUG=skia:6214

Change-Id: I5d57feb3e92f2c1691231c982e74020560febeca
Reviewed-on: https://skia-review.googlesource.com/8837
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkClipStack: add bounds() and isEmpty() methods
Hal Canary [Tue, 7 Feb 2017 21:58:28 +0000 (16:58 -0500)]
SkClipStack: add bounds() and isEmpty() methods

Also: update some of SkPDF to use these rather than the RasterClip.

Change-Id: I5a2564d2269c145135df6a8eda65ab05e4aeaf14
Reviewed-on: https://skia-review.googlesource.com/8159
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoSkExecutor
Mike Klein [Wed, 22 Feb 2017 03:53:16 +0000 (22:53 -0500)]
SkExecutor

Refactoring to refamiliarize myself with SkTaskGroup and SkThreadPool.

This adds an SkExecutor interface to describe how we use SkThreadPool,
with a global setter and getter for a default instance.  Then I rewrote
SkTaskGroup to work with any executor, the global default by default.

I also think I've made the SkTaskGroup::wait() borrow logic clearer
with the addition of SkSemaphore::try_wait().  This lets me keep the
semaphore count and actual count of work in perfect sync.

Change-Id: I6bbdfaeb0e2c3a43daff6192d34bc4a3f7210178
Reviewed-on: https://skia-review.googlesource.com/8836
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoFold MSAN awareness into SkJumper.cpp.
Mike Klein [Tue, 21 Feb 2017 23:50:51 +0000 (18:50 -0500)]
Fold MSAN awareness into SkJumper.cpp.

This is preparation for removing skia_enable_jumper, making it true.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Ubuntu-Clang-GCE-CPU-AVX2-x86_64-Debug-MSAN

Change-Id: I21763ea5ebafaaddda7056176796307f1a81d722
Reviewed-on: https://skia-review.googlesource.com/8830
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoReland "CQ config: add gerrit CQAbility verifier."
Andrii Shyshkalov [Mon, 20 Feb 2017 10:34:35 +0000 (10:34 +0000)]
Reland "CQ config: add gerrit CQAbility verifier."

This reverts commit 02241e976b34c8bc4b2d4add2f0c881d8a8d2bc1.

Reason for revert: cq proto has been rolled to depot_tools.

Original change's description:
> Revert "CQ config: add gerrit CQAbility verifier."
>
> This reverts commit 04628221324eb2e5b329a8fd9c69196ea9acb43c.
>
> Reason for revert: Lets revert until the proto is rolled into Skia.
>
> Original change's description:
> > CQ config: add gerrit CQAbility verifier.
> >
> > Goal is to ensure that unreviewed and untrusted code isn't sent through
> > CQ to try bots, by accident or through malicious intent.
> >
> > R=​rmistry@google.com
> > BUG=chromium:692613
> > NOTRY=True
> >
> > Change-Id: I750be91895f5b77229b8f4a22216f00eaa75f7a0
> > Reviewed-on: https://skia-review.googlesource.com/8620
> > Reviewed-by: Ravi Mistry <rmistry@google.com>
> > Commit-Queue: Ravi Mistry <rmistry@google.com>
> >
>
> TBR=rmistry@google.com,reviews@skia.org,tandrii@google.com
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:692613
>
> Change-Id: I6d4b821b2a02ef3e097cf68cd8ebfb2b51d4d165
> Reviewed-on: https://skia-review.googlesource.com/8663
> Reviewed-by: Ravi Mistry <rmistry@google.com>
> Commit-Queue: Ravi Mistry <rmistry@google.com>
>

R=rmistry@google.com,reviews@skia.org,tandrii@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
BUG=chromium:692613

Change-Id: Icefcd69b4608e5294f358de66a9ce014c9950ede
Reviewed-on: https://skia-review.googlesource.com/8740
Reviewed-by: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>

7 years agoRemove GrPipelineBuilder.cpp
Brian Salomon [Tue, 21 Feb 2017 21:54:27 +0000 (16:54 -0500)]
Remove GrPipelineBuilder.cpp

Change-Id: I14c26f2967e4722fa4d6ce4664a5857add0cf854
Reviewed-on: https://skia-review.googlesource.com/8822
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
7 years agoGrTessellator: misc. cleanups and minor tweaks.
Stephen White [Tue, 21 Feb 2017 20:24:13 +0000 (15:24 -0500)]
GrTessellator: misc. cleanups and minor tweaks.

Invert some math to remove a negation.

Don't keep a persistent count in EdgeList; we'll test for degenerate
boundaries in boundary_to_aa_mesh().

Make connect() use the top/bottom ordering that new_edge has already
done for us.

Don't add the an edge to the same poly twice when it's easily detectable.

Remove some superfluous variables and intialization.

BUG=skia:

Change-Id: I0efd9ec385d6dfec8950b7acfc6dd25572f667b5
Reviewed-on: https://skia-review.googlesource.com/8784
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>

7 years agoRemove special build for Valgrind.
Ben Wagner [Wed, 22 Feb 2017 00:27:07 +0000 (19:27 -0500)]
Remove special build for Valgrind.

Valgrind uses the unmodified binary. See skia:6267.

BUG=skia:6267

Change-Id: I3fcecf9ffce67ebec88d4005e464c66d25c6aa21
Reviewed-on: https://skia-review.googlesource.com/8833
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoFix tasks.json after crossed CLs.
Ben Wagner [Wed, 22 Feb 2017 15:04:20 +0000 (10:04 -0500)]
Fix tasks.json after crossed CLs.

These two CLs caused failure on Housekeeper-PerCommit-InfraTests:
https://skia-review.googlesource.com/8839
https://skia-review.googlesource.com/8805

NOTRY=true

Change-Id: Ie27c2fd73186cdd4d9ae5528635bc9690df03210
Reviewed-on: https://skia-review.googlesource.com/8845
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoSkJumper: remove TODO.
Mike Klein [Tue, 21 Feb 2017 22:59:03 +0000 (17:59 -0500)]
SkJumper: remove TODO.

Starting with uninitialized vectors is only minorly faster (<0.5%).
I'd rather keep the zeroes and feel warm and fuzzy.

Change-Id: Ib28aef9c9a75f53e2ab645bfb094582e30b7df07
Reviewed-on: https://skia-review.googlesource.com/8825
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd eGPU jobs.
Ben Wagner [Tue, 21 Feb 2017 20:15:55 +0000 (15:15 -0500)]
Add eGPU jobs.

Change-Id: Ia160d3b17abebf0075f8ce2b608653e496f46d58
Reviewed-on: https://skia-review.googlesource.com/8805
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoFix Mesa compile
Brian Osman [Wed, 22 Feb 2017 13:48:10 +0000 (08:48 -0500)]
Fix Mesa compile

BUG=skia:

Change-Id: Id532233537d18e6185a83681188aa73527b212a1
Reviewed-on: https://skia-review.googlesource.com/8842
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoSkRegion: change serialization unit tests, better validation code
Hal Canary [Mon, 20 Feb 2017 03:16:10 +0000 (22:16 -0500)]
SkRegion: change serialization unit tests, better validation code

Also: Don't alloc before validation.

Change-Id: Ic2e007ecf4e06fb099366295b963f66df3f7903a
Reviewed-on: https://skia-review.googlesource.com/8728
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agoDo not retry test or perf tasks
Eric Boren [Wed, 22 Feb 2017 13:36:03 +0000 (08:36 -0500)]
Do not retry test or perf tasks

BUG=skia:

Change-Id: I153978a92420eb2c39024213ebcdf95d1b8bde30
Reviewed-on: https://skia-review.googlesource.com/8839
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoWhitespace change to test new submit strategy II
Ravi Mistry [Wed, 22 Feb 2017 13:57:06 +0000 (08:57 -0500)]
Whitespace change to test new submit strategy II

BUG=skia:
NOTRY=true

Change-Id: I1dd15dcc85967689a55b9661807dd9eab135f014
Reviewed-on: https://skia-review.googlesource.com/8843
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>

7 years agoWhitespace change to test new submit strategy I
Ravi Mistry [Wed, 22 Feb 2017 13:56:52 +0000 (08:56 -0500)]
Whitespace change to test new submit strategy I

BUG=skia:
NOTRY=true

Change-Id: I9a20af0c57d98f86794d6ce6f37ee8200fe8e088
Reviewed-on: https://skia-review.googlesource.com/8840
Reviewed-by: Ravi Mistry <rmistry@google.com>
7 years agoWhitespace change to test new submit strategy II
Ravi Mistry [Wed, 22 Feb 2017 13:29:26 +0000 (08:29 -0500)]
Whitespace change to test new submit strategy II

BUG=skia:
NOTRY=true

Change-Id: I21778ed732f53f2216cfc007c43016c83926176a
Reviewed-on: https://skia-review.googlesource.com/8841
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>

7 years agoSupport shared GL contexts in GrContextFactory
Brian Osman [Tue, 21 Feb 2017 21:58:08 +0000 (16:58 -0500)]
Support shared GL contexts in GrContextFactory

Mostly plumbing, plus some minimal testing to make sure that
the platform APIs don't explode. I plan to add testing of
SkCrossContextImageData using this, which should verify that
textures are actually shared.

Also found a factory and some related code in the
CommandBuffer test context that was totally unused.
BUG=skia:

Change-Id: I05bbc22c4d1ef946b702a5cc7f67788785219c62
Reviewed-on: https://skia-review.googlesource.com/8808
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>

7 years agoremove guard for SkImageGenerator api
Mike Reed [Wed, 22 Feb 2017 03:48:21 +0000 (22:48 -0500)]
remove guard for SkImageGenerator api

BUG=skia:

Change-Id: I0c01fbf935be5d933aa2ef67a0fb2edba4941fa7
Reviewed-on: https://skia-review.googlesource.com/8835
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoexpore flags for text decoration into android-specific reserved bits
Mike Reed [Tue, 21 Feb 2017 20:07:44 +0000 (15:07 -0500)]
expore flags for text decoration into android-specific reserved bits

BUG=skia:6250

precursor to https://skia-review.googlesource.com/c/8815/

Change-Id: I0ff13ff99299edcb7809a2088e0ace61bc8cc60d
Reviewed-on: https://skia-review.googlesource.com/8816
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkConvertPixels: Add Alpha8 fast path
Matt Sarett [Tue, 21 Feb 2017 23:28:48 +0000 (18:28 -0500)]
SkConvertPixels: Add Alpha8 fast path

BUG:692936

Change-Id: I8394554764b1f46bd8eaabb0194d52f361d477c1
Reviewed-on: https://skia-review.googlesource.com/8826
Commit-Queue: Matt Sarett <msarett@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoSplit Valgrind jobs -- one DM/NB run per task.
Ben Wagner [Wed, 22 Feb 2017 00:10:24 +0000 (19:10 -0500)]
Split Valgrind jobs -- one DM/NB run per task.

Reland of https://skia-review.googlesource.com/c/8723/1

BUG=skia:2789
NOTRY=true

Change-Id: I1fbd314457a9d411543c8d7af4df166608d1acc7
Reviewed-on: https://skia-review.googlesource.com/8832
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoRevert "Split Valgrind jobs -- one DM/NB run per task."
Ben Wagner [Tue, 21 Feb 2017 23:56:42 +0000 (23:56 +0000)]
Revert "Split Valgrind jobs -- one DM/NB run per task."

This reverts commit bc9cd524d8ce8fd61ff6e49fa2a6e2a26a069874.

Reason for revert: Unable to find Valgrind binary.

Original change's description:
> Split Valgrind jobs -- one DM/NB run per task.
>
> Remove special build for Valgrind -- Valgrind uses the unmodified binary. See skia:6267.
>
> BUG=skia:2789,skia:6267
>
> Change-Id: Id56c460abf36eb2be633ac3a309e0dbc7a278f41
> Reviewed-on: https://skia-review.googlesource.com/8723
> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
> Reviewed-by: Eric Boren <borenet@google.com>
> Reviewed-by: Mike Klein <mtklein@chromium.org>
>

TBR=mtklein@chromium.org,borenet@google.com,mtklein@google.com,benjaminwagner@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:2789,skia:6267

Change-Id: I16876a8528c441805931ed21e9aa8688ab2e0b4c
Reviewed-on: https://skia-review.googlesource.com/8831
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoOmit encode-platform on N5 for all configs.
Ben Wagner [Tue, 21 Feb 2017 23:17:15 +0000 (18:17 -0500)]
Omit encode-platform on N5 for all configs.

BUG=skia:5876

Change-Id: Icfd000638290418870df857722317c62cb6942d9
Reviewed-on: https://skia-review.googlesource.com/8827
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoWhoops, forgot to re-run build_stages.
Mike Klein [Tue, 21 Feb 2017 22:57:50 +0000 (17:57 -0500)]
Whoops, forgot to re-run build_stages.

Change-Id: I723ae1ecaebf43e84bf47163e44e7899faf31c8a
Reviewed-on: https://skia-review.googlesource.com/8824
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSplit Valgrind jobs -- one DM/NB run per task.
Ben Wagner [Tue, 21 Feb 2017 22:36:57 +0000 (17:36 -0500)]
Split Valgrind jobs -- one DM/NB run per task.

Remove special build for Valgrind -- Valgrind uses the unmodified binary. See skia:6267.

BUG=skia:2789,skia:6267

Change-Id: Id56c460abf36eb2be633ac3a309e0dbc7a278f41
Reviewed-on: https://skia-review.googlesource.com/8723
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agofixed SPIR-V vector equality tests
Ethan Nicholas [Tue, 21 Feb 2017 18:50:00 +0000 (13:50 -0500)]
fixed SPIR-V vector equality tests

BUG=skia:

Change-Id: I6ae597d16c0bd17ce4c0316e7ef65cd52643f4b7
Reviewed-on: https://skia-review.googlesource.com/8804
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoMove looping logic into start_pipeline().
Mike Klein [Tue, 21 Feb 2017 21:50:52 +0000 (16:50 -0500)]
Move looping logic into start_pipeline().

This should be a big win on Windows, but I haven't timed there yet.
On my Mac, it's a solid 2% speedup.

PS1 was insufficiently ambitious, but was this for posterity:
    No need to vzeroupper twice on Windows.

    On Windows start_pipeline() will vzeroupper,
    so no need to do it in just_return().

Change-Id: I099320b95da85900a60ce96fdb7a216a36db1858
Reviewed-on: https://skia-review.googlesource.com/8821
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
7 years agoPrint GL shader source with line numbers when there is a compile error
csmartdalton [Fri, 17 Feb 2017 21:52:48 +0000 (14:52 -0700)]
Print GL shader source with line numbers when there is a compile error

BUG=skia:

Change-Id: I06bad4aacf5992d8207881f59f20615479536481
Reviewed-on: https://skia-review.googlesource.com/8562
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>

7 years agoMake GrXferProcessor and related classes private.
Brian Salomon [Tue, 21 Feb 2017 21:32:20 +0000 (16:32 -0500)]
Make GrXferProcessor and related classes private.

Change-Id: I81ea6f5ea5c8b7b23848ef24524a7e48e531efe8
Reviewed-on: https://skia-review.googlesource.com/8819
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoMake sure fuzzer can't pick an illegal colortype
Kevin Lubick [Tue, 21 Feb 2017 21:06:19 +0000 (16:06 -0500)]
Make sure fuzzer can't pick an illegal colortype

BUG=skia:6216

Change-Id: Ifb0a0a1e634bb291c586d2094401ec10349dcd0e
Reviewed-on: https://skia-review.googlesource.com/8817
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoRemove SkSpecialImage's GrTexture-based ctors
Robert Phillips [Tue, 21 Feb 2017 15:19:29 +0000 (10:19 -0500)]
Remove SkSpecialImage's GrTexture-based ctors

Change-Id: Id71b8ab0477cd1d459089d97af27d63f9f08d21b
Reviewed-on: https://skia-review.googlesource.com/7889
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRename GrContextFactory::ContextOptions to ContextOverrides
csmartdalton [Tue, 21 Feb 2017 19:36:05 +0000 (12:36 -0700)]
Rename GrContextFactory::ContextOptions to ContextOverrides

Also changes the behavior of these flags to only override their
corresponding context options when set, and to leave them unchanged
when not set.

BUG=skia:

Change-Id: I09f6be09997594fa888d9045dd4901354ef3f880
Reviewed-on: https://skia-review.googlesource.com/8780
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>

7 years agoFix ComposeOneFragmentProcessor coverage as alpha optimization.
Brian Salomon [Tue, 21 Feb 2017 19:19:07 +0000 (14:19 -0500)]
Fix ComposeOneFragmentProcessor coverage as alpha optimization.

It should only be advertised if the child also advertises it.

Change-Id: I698213c9562d710dff45f0622d50eacc41e29af5
Reviewed-on: https://skia-review.googlesource.com/8811
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoSkPath.readFromMemory: check for error case
Hal Canary [Tue, 21 Feb 2017 19:18:01 +0000 (14:18 -0500)]
SkPath.readFromMemory:  check for error case

Fuzzing can produce inconsistant data, such as flags or bounds.

Also, use std::unique_ptr to reduce the need for calling `delete`.

BUG=skia:6262
BUG=skia:6263
Change-Id: I1de6b5f764cda346bb3cd5cd4698816b6b68f395
Reviewed-on: https://skia-review.googlesource.com/8812
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
7 years agoClamp gradient colors in fragment shader after interpolation when there is a color...
Brian Salomon [Tue, 21 Feb 2017 19:35:11 +0000 (14:35 -0500)]
Clamp gradient colors in fragment shader after interpolation when there is a color space.

This matches what is done in the LUT texture case.

Change-Id: I95ab8c9ac761a3315a55a7f81bfe2e4077070542
Reviewed-on: https://skia-review.googlesource.com/8813
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoSkJumper: Windows
Mike Klein [Tue, 21 Feb 2017 17:13:44 +0000 (12:13 -0500)]
SkJumper: Windows

    - Compile stages with -DWIN to pick up MS-specific start_pipeline().
    - Add SkJumper_generated_win.S with MS-specific assembly.
    - Add a minimal asm tool to our GN Windows toolchain.

The SkRasterPipeline_f16 benchmark run ~4x faster on my desktop.

Change-Id: Ia45afb4ecb6a055e2c0e43f0f54f59e081c23b7f
Reviewed-on: https://skia-review.googlesource.com/8778
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoGrTessellator (AA): implement fast path for removing non-boundary edges.
Stephen White [Tue, 21 Feb 2017 15:35:49 +0000 (10:35 -0500)]
GrTessellator (AA): implement fast path for removing non-boundary edges.

Instead of using a full tessellate() pass, which allocates Polys,
MonotonePolys, etc. It's faster to simply accumulate the winding number
in the left-adjacent edge, and use that to remove non-boundary edges
(edges for which apply_fill_type() returns the same value on either
side of the edge).

This gives ~4-5% boost on MotionMark Fill Shapes.

Change-Id: I66bd4248ace01a8c35abd99519f4c455f936e5e5
Reviewed-on: https://skia-review.googlesource.com/8782
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>

7 years agoinitial clean up of pdf clipping
Mike Reed [Tue, 21 Feb 2017 18:54:30 +0000 (13:54 -0500)]
initial clean up of pdf clipping

clipstack is always available, canvas checks for empty clips up-front

Next step is to clarify if PDF wants to use Regions or Clipstack for its clipping (but not both)

Change-Id: Iaf1fa35160291e08c33ff61114557deff72304b3
Reviewed-on: https://skia-review.googlesource.com/8692
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoAdd GrTFlagsMask<> wrapper for C++11 bitfield enums
csmartdalton [Mon, 20 Feb 2017 06:51:45 +0000 (23:51 -0700)]
Add GrTFlagsMask<> wrapper for C++11 bitfield enums

Previously, operator& for enum class bitfields was reserved only to
return a bool. e.g:

  if (flags & Flags::kFlag)

This change adds a new template class GrTFlagsMask<> that gets
instantiated by operator~ and allows us to write expressions like:

  flags &= ~Flags::kFlag
  (flags & ~Flags::kFlag1) | Flags::kFlag2

BUG=skia:

Change-Id: I21e5eb9304135e82cdda459e8a833a3489f6beaf
Reviewed-on: https://skia-review.googlesource.com/8563
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoUpdate milestone schedule on skia.org
Heather Miller [Tue, 21 Feb 2017 19:01:34 +0000 (14:01 -0500)]
Update milestone schedule on skia.org

BUG=skia:

NOTRY=true
DOCS_PREVIEW= https://skia.org/?cl=8809

Change-Id: Ic46ee37e90f90ebf6826cf5ead18bfd5ed75817a
Reviewed-on: https://skia-review.googlesource.com/8809
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>

7 years agomove PDFDevice over to cipstackdevice
Mike Reed [Tue, 21 Feb 2017 18:15:07 +0000 (13:15 -0500)]
move PDFDevice over to cipstackdevice

BUG=skia:6214

Change-Id: I3fc5d49e9197ecff9d83ac50f24a67cccd99a092
Reviewed-on: https://skia-review.googlesource.com/8803
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoRemove unneeded is_fuzzing flag
Kevin Lubick [Tue, 21 Feb 2017 17:39:57 +0000 (12:39 -0500)]
Remove unneeded is_fuzzing flag

BUG=skia:6260

Change-Id: Id27ac7f64276f87f86719bf4fc3f8834466320ab
Reviewed-on: https://skia-review.googlesource.com/8800
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoAdd machine_type dimension to disambiguate bots with GTX960.
Ben Wagner [Sun, 19 Feb 2017 04:28:26 +0000 (23:28 -0500)]
Add machine_type dimension to disambiguate bots with GTX960.

BUG=skia:

Change-Id: Id66505d2e45cfff0bb31f630d96f7a78ad2f701b
Reviewed-on: https://skia-review.googlesource.com/8721
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>

7 years agoSimplify GrPaint::isConstantBlendedColor to avoid FP analysis and XP virtual calls
Brian Salomon [Tue, 21 Feb 2017 16:31:40 +0000 (11:31 -0500)]
Simplify GrPaint::isConstantBlendedColor to avoid FP analysis and XP virtual calls

This was the only non-test user of GrXPFactory::isConstantPreCoverageBlendedColor which is now removed.

Change-Id: Ic1c130d30a44e1a955b89f8912433a3c9df2e61e
Reviewed-on: https://skia-review.googlesource.com/8776
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoImprove SkCanvas::temporary_internal_getRgnClip performance
Stan Iliev [Tue, 21 Feb 2017 16:15:53 +0000 (11:15 -0500)]
Improve SkCanvas::temporary_internal_getRgnClip performance

Improve temporary_internal_getRgnClip performance for rect clips
by avoiding SkClipStack::asPath.

BUG=skia:

Change-Id: I371ac6031df325646841d57c4afaba7b835a12bb
Reviewed-on: https://skia-review.googlesource.com/8688
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoPrefer EllipseOp instead of DIEllipseOp
Stan Iliev [Tue, 21 Feb 2017 16:06:16 +0000 (11:06 -0500)]
Prefer EllipseOp instead of DIEllipseOp

Prefer EllipseOp instead of DIEllipseOp, which improves the
performance.

BUG=skia:

Change-Id: I607c21326b44a80e0586c577349452a9c369488f
Reviewed-on: https://skia-review.googlesource.com/8690
Commit-Queue: Stan Iliev <stani@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
7 years agoRemove GrProcessorTestData's GrTextures
Robert Phillips [Tue, 21 Feb 2017 15:04:31 +0000 (10:04 -0500)]
Remove GrProcessorTestData's GrTextures

(No longer) Blocked on: https://skia-review.googlesource.com/c/8450/ (Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2))

This also (unfortunately) picks up a few straggling effects that didn't have a sk_sp<GrTextureProxy> factory.

Change-Id: I5ce583a084aa8fe00e866eec1db90e2ec9dd2ab0
Reviewed-on: https://skia-review.googlesource.com/8500
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoMove declaration of is_fuzzer to where it is used
Ravi Mistry [Tue, 21 Feb 2017 15:50:13 +0000 (10:50 -0500)]
Move declaration of is_fuzzer to where it is used

BUG=skia:6260

Change-Id: Iaca4fb1afb4d182f4d2ae64d939729363a226ce6
Reviewed-on: https://skia-review.googlesource.com/8772
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>

7 years agoStore GrRenderTarget rather than just its ID in GrRenderTargetOpList::RecordedOp.
Brian Salomon [Tue, 21 Feb 2017 14:49:20 +0000 (09:49 -0500)]
Store GrRenderTarget rather than just its ID in GrRenderTargetOpList::RecordedOp.

This will allow us to feed the op's their render target when they don't have a pipeline before execution.

Change-Id: I01f16bec32e930c0152105a9179306159cb14dc4
Reviewed-on: https://skia-review.googlesource.com/8693
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
7 years agoClean up DFs for extremely small paths
Jim Van Verth [Fri, 17 Feb 2017 19:02:13 +0000 (14:02 -0500)]
Clean up DFs for extremely small paths

BUG=skia:6255

Change-Id: Ie2b645c4e18fab30c67cd3ee9857f7b003713339
Reviewed-on: https://skia-review.googlesource.com/8665
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>

7 years agoRoll recipe DEPS again
Eric Boren [Tue, 21 Feb 2017 14:43:05 +0000 (09:43 -0500)]
Roll recipe DEPS again

This time with coverage bypass

BUG=skia:

Change-Id: I7f51dcad7bad53c7209ac512876a0d72c6181b8e
Reviewed-on: https://skia-review.googlesource.com/8768
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoDraw path onto a canvas when fuzzing
Kevin Lubick [Tue, 21 Feb 2017 14:37:48 +0000 (09:37 -0500)]
Draw path onto a canvas when fuzzing

BUG=skia:
NOTRY=true
TBR=jcgregorio@google.com

Change-Id: Icd6b1b884705f7599be23b5d6283adfcfcbe727b
Reviewed-on: https://skia-review.googlesource.com/8767
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoRoll recipe DEPS
Eric Boren [Tue, 21 Feb 2017 12:22:20 +0000 (07:22 -0500)]
Roll recipe DEPS

Attempt 2. Lots of fixes due to upstream breaks.

BUG=skia:

Change-Id: Ie05b2da1790fbcce5c45ef09c4c832e09de6b5c5
Reviewed-on: https://skia-review.googlesource.com/8762
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoUpdate Valgrind match-leak-kinds for keep-alive thread.
Mike Klein [Tue, 21 Feb 2017 13:12:09 +0000 (08:12 -0500)]
Update Valgrind match-leak-kinds for keep-alive thread.

Valgrind has tipped over from seeing the keep-alive thread as possibly
leaked to seeing it as definitely leaked.  We can suppress both.

An alternative here is "all" or to just remove the line.  For the moment
I think this is best, as we're still excluding indirect leaks this way.
I'd want to think a bit whether it made sense for the keep-alive thread
to indirectly leak anything, so I'd like it to fail if it comes up.

Change-Id: Ib28790a1d84a0a9061fdb6de48569ca8ea51b52a
Reviewed-on: https://skia-review.googlesource.com/8764
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoStream logs in symbolized dm/nanobench
Kevin Lubick [Mon, 20 Feb 2017 13:48:35 +0000 (08:48 -0500)]
Stream logs in symbolized dm/nanobench

BUG=skia:

Change-Id: I693bec4daa819f3c7802aa54f452b47f228b370b
Reviewed-on: https://skia-review.googlesource.com/8673
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoBlacklisting scaled_tilemodes_npot on GalaxyTab3
Kevin Lubick [Tue, 21 Feb 2017 12:58:16 +0000 (07:58 -0500)]
Blacklisting scaled_tilemodes_npot on GalaxyTab3

It now fails after a few minutes instead of timing
out after 4 hours, so that's an improvement.

BUG=skia:

Change-Id: I3e9319711953a5dad7898eea507cd4d83db7842d
Reviewed-on: https://skia-review.googlesource.com/8729
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoWrite SkRegion fuzzer
Kevin Lubick [Mon, 20 Feb 2017 22:47:18 +0000 (17:47 -0500)]
Write SkRegion fuzzer

BUG=688987

Change-Id: I2ad1c53ea01185a77b662d2d86b0c6d36fcb63c7
Reviewed-on: https://skia-review.googlesource.com/8499
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
7 years agoRemove asTextureRef from SkSpecialImage & update effects accordingly (take 2)
Robert Phillips [Sun, 19 Feb 2017 17:27:01 +0000 (12:27 -0500)]
Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2)

This CL also renames SkSpecialImage::asTextureProxy to asTextureProxyRef

This is a reland of: https://skia-review.googlesource.com/c/7995/ (Remove asTextureRef from SkSpecialImage & update effects accordingly)

It should be good to land since https://skia-review.googlesource.com/c/8701/ (Replace SkSpecialImage::makeTightSubset with asImage (take 2)) fixes the Chrome-side issue

Change-Id: I3d88b2b3d23fd69f3fb914a69dacca96cbc038a4
Reviewed-on: https://skia-review.googlesource.com/8450
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
7 years agoFix client roll (part 2)
Matt Sarett [Mon, 20 Feb 2017 17:50:52 +0000 (12:50 -0500)]
Fix client roll (part 2)

NOTRY=true

BUG=skia:

Change-Id: I0b69d0543cc710e4d06950a5a458a90cdf276d76
Reviewed-on: https://skia-review.googlesource.com/8761
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoFix client roll
Matt Sarett [Mon, 20 Feb 2017 15:41:39 +0000 (10:41 -0500)]
Fix client roll

This change was made in the client master, but, since the bp file is
autogenerated, it has broken all subsequent rolls.

BUG=skia:

Change-Id: I722c020414f2700c50bf4a1b5936d993e44864a1
Reviewed-on: https://skia-review.googlesource.com/8730
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>

7 years agoUpdate SKP version
UpdateSKPs [Sun, 19 Feb 2017 06:57:19 +0000 (06:57 +0000)]
Update SKP version

Automatic commit by the RecreateSKPs bot.

TBR=update-skps@skia.org
NO_MERGE_BUILDS

Change-Id: I896cc218aa030760fc64ed43b516072fff6a77b9
Reviewed-on: https://skia-review.googlesource.com/8702
Reviewed-by: update-skps <update-skps@skia.org>
Commit-Queue: update-skps <update-skps@skia.org>

7 years agoReplace SkSpecialImage::makeTightSubset with asImage (take 2)
Robert Phillips [Sat, 18 Feb 2017 21:58:09 +0000 (16:58 -0500)]
Replace SkSpecialImage::makeTightSubset with asImage (take 2)

This is a reland of https://skia-review.googlesource.com/c/8498/ (Replace SkSpecialImage::makeTightSubset with asImage)

It must wait on https://codereview.chromium.org/2702703002/ (Add suppressions for upcoming Skia DEPS roll) due to minor layout test changes

This should allow the relanding of:

https://skia-review.googlesource.com/c/8450/ (Remove asTextureRef from SkSpecialImage & update effects accordingly (take 2))

Change-Id: I7086a419869dbeb62d9b9e9714c796d54e75ee49
Reviewed-on: https://skia-review.googlesource.com/8701
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agohide via-svg until I can fix g3
Mike Reed [Sat, 18 Feb 2017 21:50:45 +0000 (16:50 -0500)]
hide via-svg until I can fix g3

BUG=skia:

Change-Id: I226194a4db5c9618dd312337bf196d8f21825a12
Reviewed-on: https://skia-review.googlesource.com/8720
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoExpand use of GrMakeCachedBitmapProxy (take 2)
Robert Phillips [Sat, 18 Feb 2017 20:15:51 +0000 (15:15 -0500)]
Expand use of GrMakeCachedBitmapProxy (take 2)

Reland of https://skia-review.googlesource.com/c/8666/ (Expand use of GrMakeCachedBitmapProxy) with a fix for the non-GPU build

Change-Id: I91d1658139b895b94e04d3f486e56b76bc6d184a
Reviewed-on: https://skia-review.googlesource.com/8700
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoadd svg path to DM
Mike Reed [Sat, 18 Feb 2017 19:12:08 +0000 (14:12 -0500)]
add svg path to DM

BUG=skia:
NOTRY=True

Change-Id: I6304f0ebd6cc9a4dc1d056f9ad33c1ef9ba7e91d
Reviewed-on: https://skia-review.googlesource.com/8698
Reviewed-by: Mike Reed <reed@google.com>
7 years agoall DM to see src/core
Mike Reed [Sat, 18 Feb 2017 17:57:09 +0000 (12:57 -0500)]
all DM to see src/core

BUG=skia:

Change-Id: I6c405596799b99fb1a3afbe097995ecc7fbc3d97
Reviewed-on: https://skia-review.googlesource.com/8697
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoall DM to include from src/xml
Mike Reed [Sat, 18 Feb 2017 14:51:33 +0000 (09:51 -0500)]
all DM to include from src/xml

BUG=skia:

Change-Id: Ifb88aa866bbf763a02a172a991077ef49fbe91b8
Reviewed-on: https://skia-review.googlesource.com/8695
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>

7 years agoSkRegion deserialization more robust
Hal Canary [Thu, 16 Feb 2017 17:42:24 +0000 (12:42 -0500)]
SkRegion deserialization more robust

BUG=chromium:688987
Change-Id: Ide6d70330c8cd1fce814eb2c445da1fbff498ef6
Reviewed-on: https://skia-review.googlesource.com/8496
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
7 years agoSkJumper: aarch64 and armv7
Mike Klein [Fri, 17 Feb 2017 19:13:08 +0000 (14:13 -0500)]
SkJumper: aarch64 and armv7

Change-Id: Ie356b062372af3516a437d27bafa20d98e28edd6
Reviewed-on: https://skia-review.googlesource.com/8678
Commit-Queue: Mike Klein <mtklein@chromium.org>
Reviewed-by: Mike Klein <mtklein@chromium.org>
7 years agoFix -Wshadow-field warning in class NullInterface
Brian Salomon [Sat, 18 Feb 2017 01:43:43 +0000 (20:43 -0500)]
Fix -Wshadow-field warning in class NullInterface

This warning fires in a tip of tree clang build because the base class to NullInterface also has a field called fExtensions.

Change-Id: I5e2a901583ae223a85d562f2d8b082e4d0cbf690
Reviewed-on: https://skia-review.googlesource.com/8691
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>

7 years agoadd ViaSVG to dm
Mike Reed [Fri, 17 Feb 2017 22:06:11 +0000 (17:06 -0500)]
add ViaSVG to dm

BUG=skia:

Change-Id: I52892a0dd466bee6e3abcaa89a373b93493d201f
Reviewed-on: https://skia-review.googlesource.com/8682
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agoRevert "hide deprecated underline and strikethru"
Leon Scroggins [Fri, 17 Feb 2017 22:48:51 +0000 (22:48 +0000)]
Revert "hide deprecated underline and strikethru"

This reverts commit a01bf9ab748836fc4bf271bd5024151bf1ce2e88.

Reason for revert: Breaking Android merge. They access setUnderlineText on their <shudder> subclass of SkPaint.

Original change's description:
> hide deprecated underline and strikethru
>
> BUG=skia:6250
>
> Change-Id: I85395e4960b16ab91237a74ff35e5b7588965512
> Reviewed-on: https://skia-review.googlesource.com/8600
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
>

TBR=bungeman@google.com,reed@google.com,reviews@skia.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:6250

Change-Id: If55f69f061dc4439ca2faa62807a9c5694ebbeb4
Reviewed-on: https://skia-review.googlesource.com/8687
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>

7 years agoDisable SkJumper on MSAN builds.
Mike Klein [Fri, 17 Feb 2017 21:35:59 +0000 (16:35 -0500)]
Disable SkJumper on MSAN builds.

Change-Id: I89c944f5ed1e1a9aee5e73c384a53d86fd13d07e
Reviewed-on: https://skia-review.googlesource.com/8683
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agosksl support for geometry shaders
Ethan Nicholas [Thu, 16 Feb 2017 21:37:32 +0000 (16:37 -0500)]
sksl support for geometry shaders

BUG=skia:

Change-Id: I8541b98aadcf4c2484fef73e2f49be3ee38bc1e2
Reviewed-on: https://skia-review.googlesource.com/8409
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>

7 years agoSkJumper: Linux
Mike Klein [Fri, 17 Feb 2017 17:52:31 +0000 (12:52 -0500)]
SkJumper: Linux

Just need to take care to match C symbols with asm symbols.  Linux
doesn't add the leading underscore automatically like Mac and Windows.

Change-Id: I488cdfec942b442554ffefdfd006a1305ad77d9d
Reviewed-on: https://skia-review.googlesource.com/8667
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agoSet asmflags when building for iOS.
Mike Klein [Fri, 17 Feb 2017 20:36:01 +0000 (15:36 -0500)]
Set asmflags when building for iOS.

It's probably best we build iOS assembly with the iOS SDK and the right
architecture settings in Clang...

Change-Id: I68119641b1f86267ca85434b5a7f6ed37838ce23
Reviewed-on: https://skia-review.googlesource.com/8680
Reviewed-by: Mike Klein <mtklein@chromium.org>
Commit-Queue: Mike Klein <mtklein@chromium.org>

7 years agouse common intermediate device class for clipstack management
Mike Reed [Fri, 17 Feb 2017 19:38:11 +0000 (14:38 -0500)]
use common intermediate device class for clipstack management

BUG=skia:6214

Change-Id: I64b849ad7c8dafe423e24e6fccfb3f0c1d096ab0
Reviewed-on: https://skia-review.googlesource.com/8669
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
7 years agoRevert "Roll Recipe DEPS"
Eric Boren [Fri, 17 Feb 2017 20:53:27 +0000 (20:53 +0000)]
Revert "Roll Recipe DEPS"

This reverts commit 310f4d02c1e2d01181c1db18acf05f2846f94cd4.

Reason for revert: Broke uploads

Original change's description:
> Roll Recipe DEPS
>
> BUG=skia:
>
> Change-Id: I3e32207e5809e126d53ee8ec2158eb855c1a26d2
> Reviewed-on: https://skia-review.googlesource.com/8671
> Commit-Queue: Eric Boren <borenet@google.com>
> Reviewed-by: Ravi Mistry <rmistry@google.com>
>

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

Change-Id: If6eed7a72aa7178afd23d0a4a7786e23b27c1ac2
Reviewed-on: https://skia-review.googlesource.com/8681
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>

7 years agoRevert "Expand use of GrMakeCachedBitmapProxy"
Robert Phillips [Fri, 17 Feb 2017 20:18:54 +0000 (20:18 +0000)]
Revert "Expand use of GrMakeCachedBitmapProxy"

This reverts commit 561d1f8153c591dac670148a574a7638f3fe8c2d.

Reason for revert: ios-device-xcode-clang

Original change's description:
> Expand use of GrMakeCachedBitmapProxy
>
> Change-Id: Ic276b9d772763dc16ac6b15a0896578d2d02e06e
> Reviewed-on: https://skia-review.googlesource.com/8666
> 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: I5349cfea983cb65c11b5c250e674a841b9691c40
Reviewed-on: https://skia-review.googlesource.com/8677
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoRoll Recipe DEPS
Eric Boren [Fri, 17 Feb 2017 19:09:44 +0000 (14:09 -0500)]
Roll Recipe DEPS

BUG=skia:

Change-Id: I3e32207e5809e126d53ee8ec2158eb855c1a26d2
Reviewed-on: https://skia-review.googlesource.com/8671
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
7 years agoMake mask uintptr_t when calculating alignment.
Herb Derby [Fri, 17 Feb 2017 19:05:49 +0000 (14:05 -0500)]
Make mask uintptr_t when calculating alignment.

A suggestion from from the code review on cl/7614.

TBR=mtklein@google.com

Change-Id: Icfbe08bfe63ac1e21ed56481dc5251c2af5bb96a
Reviewed-on: https://skia-review.googlesource.com/8674
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>

7 years agoExpand use of GrMakeCachedBitmapProxy
Robert Phillips [Fri, 17 Feb 2017 18:00:28 +0000 (13:00 -0500)]
Expand use of GrMakeCachedBitmapProxy

Change-Id: Ic276b9d772763dc16ac6b15a0896578d2d02e06e
Reviewed-on: https://skia-review.googlesource.com/8666
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>

7 years agoChange bitmap initialization in DrawFunctions fuzzer
Kevin Lubick [Fri, 17 Feb 2017 15:27:30 +0000 (10:27 -0500)]
Change bitmap initialization in DrawFunctions fuzzer

BUG=skia:

Change-Id: Ibfd778315a0c3bf6c3abc23f8935c485fab89366
Reviewed-on: https://skia-review.googlesource.com/8615
Reviewed-by: twsmith@mozilla.com <twsmith@mozilla.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>

7 years agoFix TAP ASAN failure.
Florin Malita [Fri, 17 Feb 2017 17:58:41 +0000 (12:58 -0500)]
Fix TAP ASAN failure.

The current SkFixed3232 pinning logic in SkClampRange is not safe:
SkFixed3232ToFloat(SkFixed3232Max) and SkFixed3232ToFloat(SkFixed3232Min)
are not exactly representable in float, so they are not good SkTPin
limits.

Use the next representable float value towards zero.  Constants computed
with nextafterf(..., 0).

Change-Id: I8e2eb35b22f65077e8ce6055d670d90d2a163bae
Reviewed-on: https://skia-review.googlesource.com/8662
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
7 years agoRevert "Add SkTypeface::getVariationDesignPosition."
Ben Wagner [Fri, 17 Feb 2017 18:38:52 +0000 (18:38 +0000)]
Revert "Add SkTypeface::getVariationDesignPosition."

This reverts commit 87e7f820f74a990a59fb8f1d5c182584ce586ecf.

Reason for revert: Failed a test on Mac

Original change's description:
> Add SkTypeface::getVariationDesignPosition.
>
> Allow users to query a typeface's position in variation design space.
>
> Change-Id: I5d80c8ff658708a5d1aa386ec5b7396dcb621198
> Reviewed-on: https://skia-review.googlesource.com/7130
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Mike Reed <reed@google.com>
>

TBR=bungeman@google.com,reed@google.com,reviews@skia.org,drott@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

Change-Id: Ia65792083642dbe9333a62eb75d162931b57cffd
Reviewed-on: https://skia-review.googlesource.com/8670
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>

7 years agoAdd SkTypeface::getVariationDesignPosition.
Ben Wagner [Thu, 16 Feb 2017 21:56:26 +0000 (16:56 -0500)]
Add SkTypeface::getVariationDesignPosition.

Allow users to query a typeface's position in variation design space.

Change-Id: I5d80c8ff658708a5d1aa386ec5b7396dcb621198
Reviewed-on: https://skia-review.googlesource.com/7130
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Reed <reed@google.com>