Commit Graph

41214 Commits

Author SHA1 Message Date
Florin Malita
80658204f4 Revert "[skottie] More snug kTop Shaper alignment"
This reverts commit 7ef3e14516.

Reason for revert: TSAN failures (HB?)

Original change's description:
> [skottie] More snug kTop Shaper alignment
> 
> The current implementation relies on SkShaper ascent values for top
> text box alignment, but the results are not as visually accurate as AE
> (or Lottie).
> 
> Use the computed tight bounds instead.
> 
> Change-Id: I4447a834fe3cae398fc887766daa68802e7f50a5
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206684
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Florin Malita <fmalita@chromium.org>

TBR=bungeman@google.com,fmalita@chromium.org

Change-Id: Icdcca2f6a7b33c8366c1118be2e842ff3978c8bd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206911
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-09 17:37:21 +00:00
Hal Canary
f22466e57c SkPDF: remove unused field
Change-Id: Ib596fca159044c5406be32e501796c4f10ac085e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206903
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-09 17:26:06 +00:00
Greg Daniel
212ff0512d Fix to barrier batching.
The vulkan spec doesn't specify a specific order for which memory barriers
submitted in the batch will execute. Thus we need to break apart batches
if barriers overlap in the subresources that they affect to make sure they're
ordered how we want.

Bug: skia:
Change-Id: I6ca6fe365301b88d11f6792ee059882f06e2eca5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206907
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-04-09 17:08:14 +00:00
Mike Klein
7b8bc53b93 --parameters -> --properties
This was a brain fart when I wrote it the first time;
the expected flag name is --properties.

    ~/skia (refactoring↑1|…) $ git grep DEFINE_string\(properties
    bench/nanobench.cpp:static DEFINE_string(properties, "",
    dm/DM.cpp:static DEFINE_string(properties, "",
    tools/fm/fm.cpp:static DEFINE_string(properties, "",

Change-Id: I9ada23e26a748bd6bc85ae5682bd03c130edc054
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206941
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-04-09 17:08:13 +00:00
Michael Ludwig
97b9442b0d Detect simpler quad type when possible
Previously, providing 4 SkPoints to draw as a quad meant the tessellator
used either kStandard or kPerspective, and couldn't use the faster
kRect and kRectilinear options. This had been simple and under the
assumption that most provided quad points would be from BSP splitting.

However, to emulate SkiaRenderer's required content_area clipping, the
content area is sent as the srcRect and the original geometry is stored
in the SkPoints. In these situations, the it is easy to detect that the
4 points make a rectangle and then relying on the CTMs matrix for the
quad type is perfectly safe.

Change-Id: Ib2b599fa9c82d275519e17cf813713806a565afe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206908
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-04-09 16:57:43 +00:00
Mike Reed
b5d8c634f9 remove guard for bitmap shader api
Change-Id: I6500f036970aa7fcc86ca0a9d2066a66e4c1c039
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206692
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-09 16:08:00 +00:00
Brian Salomon
4ffbfe6177 Add support for importing GL_R16F for YUVA promise images
Change-Id: Id9bfc98e7154dd41f3954c5824a3ab04afce3f50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206900
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-09 14:50:40 +00:00
Martin Vejdarski
8842799432 add missing shared lib visibility macros
fixes linker errors when using is_component_build

Change-Id: Ie28b0e8881cb81715a959df3a87bae4fa854afda
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206140
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Auto-Submit: Martin Vejdarski <martin@mainframe.co.uk>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-09 14:34:55 +00:00
Herb Derby
09fb824a93 Revert "Handle translating blob to origin in bulk"
This reverts commit 7a2ff3c9a8.

Reason for revert: Breaks all kinds of GMs

Original change's description:
> Handle translating blob to origin in bulk
> 
> Move all the glyphs in bulk. Handling the origin
> translation will be needed to use the bulk APIs.
> 
> Change-Id: Ic38ebc8504d874367e4a7291e26f3dfc2c59222b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206397
> Auto-Submit: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: I007971ccf5d2af96b8dfe52c1d4a03660080a189
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206904
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:34:47 +00:00
Herb Derby
c6cfca4dac Revert "Reland "Do not use sub-pixel positioning for source space""
This reverts commit 8aa0ea04ba.

Reason for revert: Breaks win7 SVG positioning tests

Original change's description:
> Reland "Do not use sub-pixel positioning for source space"
> 
> This reverts commit d9b8eed848.
> 
> Reason for revert: This does not seem to change anything in gold
> 
> Original change's description:
> > Revert "Do not use sub-pixel positioning for source space"
> > 
> > This reverts commit 7b56b0ae39.
> > 
> > Reason for revert: speculative: broke win7 layout tests
> > 
> > Original change's description:
> > > Do not use sub-pixel positioning for source space
> > > 
> > > Since the source space drawing modes call getGlyphMetrics with
> > > the point {0, 0}, just turn of sub-pixel positioning. This uses
> > > a more efficient code path in the strike
> > > 
> > > Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> > > Reviewed-by: Ben Wagner <bungeman@google.com>
> > > Commit-Queue: Ben Wagner <bungeman@google.com>
> > > Commit-Queue: Herb Derby <herb@google.com>
> > > Auto-Submit: Herb Derby <herb@google.com>
> > 
> > TBR=bungeman@google.com,herb@google.com
> > 
> > Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Mike Reed <reed@google.com>
> 
> TBR=bungeman@google.com,herb@google.com,reed@google.com
> 
> Change-Id: I44ed127ee1e7494c8959b66d25654b3393e99b27
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206901
> Reviewed-by: Herb Derby <herb@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I24ce322fa5bc285bf0fc1e0687490fa3971b291f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206713
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:28:58 +00:00
skia-autoroll
ba6087c8b7 Roll skia/third_party/skcms 36eeb1311a72..0da672fc2c69 (1 commits)
https://skia.googlesource.com/skcms.git/+log/36eeb1311a72..0da672fc2c69

2019-04-09 mtklein@google.com runtime detection for AVX-512


The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel
TBR=egdaniel@google.com

Change-Id: I03188337dea03591fecfae9b3e93a5c4a8bd3725
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206880
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 14:27:45 +00:00
Herb Derby
a519999fa5 Reland "Add maxDimension() to glyph"
This reverts commit d3516170ac.

Reason for revert: This does not seem to affect gold

Original change's description:
> Revert "Add maxDimension() to glyph"
> 
> This reverts commit c19cf51df4.
> 
> Reason for revert: speculative: broke win7 layout tests
> 
> Original change's description:
> > Add maxDimension() to glyph
> > 
> > Expand the too large for atlas calculation. Considering making
> > a "small enough" function on glyph.
> > 
> > Change-Id: I113831f4182df0939110f651fb4a5921447124c1
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
> > Commit-Queue: Herb Derby <herb@google.com>
> > Commit-Queue: Ben Wagner <bungeman@google.com>
> > Auto-Submit: Herb Derby <herb@google.com>
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> 
> TBR=bungeman@google.com,herb@google.com
> 
> Change-Id: Ie11df8e314ccf801f1d223d56344640b49200633
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206695
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I91af46df68c901394380a97678ba2366c52cc4bf
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206902
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:15:27 +00:00
Herb Derby
8aa0ea04ba Reland "Do not use sub-pixel positioning for source space"
This reverts commit d9b8eed848.

Reason for revert: This does not seem to change anything in gold

Original change's description:
> Revert "Do not use sub-pixel positioning for source space"
> 
> This reverts commit 7b56b0ae39.
> 
> Reason for revert: speculative: broke win7 layout tests
> 
> Original change's description:
> > Do not use sub-pixel positioning for source space
> > 
> > Since the source space drawing modes call getGlyphMetrics with
> > the point {0, 0}, just turn of sub-pixel positioning. This uses
> > a more efficient code path in the strike
> > 
> > Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> > Reviewed-by: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Ben Wagner <bungeman@google.com>
> > Commit-Queue: Herb Derby <herb@google.com>
> > Auto-Submit: Herb Derby <herb@google.com>
> 
> TBR=bungeman@google.com,herb@google.com
> 
> Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=bungeman@google.com,herb@google.com,reed@google.com

Change-Id: I44ed127ee1e7494c8959b66d25654b3393e99b27
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206901
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-09 14:13:47 +00:00
Brian Osman
5aa11fb67a Shader serialization experiment (with Mali Offline Compiler analysis)
1) Adds a --writeShaders option to fm. When that's included, the GPU
backend is run with a persistent cache (and no binary caching).
Then we dump all of the fragment shaders (GLSL for now) that were
created to the passed-in directory, along with a JSON digest listing
the number of times each one was referenced in the cache.

2) Adds a python script that invokes the Mali Offline Compiler on a
directory generated from #1, scraping the output of each compile for
cycle counts and writing the collated information to stdout.

Change-Id: Ie4b58ddac4f62e936707c6fec44f4fe605c213fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206162
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-09 13:37:55 +00:00
Mike Reed
d9b8eed848 Revert "Do not use sub-pixel positioning for source space"
This reverts commit 7b56b0ae39.

Reason for revert: speculative: broke win7 layout tests

Original change's description:
> Do not use sub-pixel positioning for source space
> 
> Since the source space drawing modes call getGlyphMetrics with
> the point {0, 0}, just turn of sub-pixel positioning. This uses
> a more efficient code path in the strike
> 
> Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
> Auto-Submit: Herb Derby <herb@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: I06cafe542fe6374d1a273db09617dbebd9eb04c7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206696
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-09 12:51:30 +00:00
Mike Reed
d3516170ac Revert "Add maxDimension() to glyph"
This reverts commit c19cf51df4.

Reason for revert: speculative: broke win7 layout tests

Original change's description:
> Add maxDimension() to glyph
> 
> Expand the too large for atlas calculation. Considering making
> a "small enough" function on glyph.
> 
> Change-Id: I113831f4182df0939110f651fb4a5921447124c1
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
> Commit-Queue: Herb Derby <herb@google.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>
> Auto-Submit: Herb Derby <herb@google.com>
> Reviewed-by: Ben Wagner <bungeman@google.com>

TBR=bungeman@google.com,herb@google.com

Change-Id: Ie11df8e314ccf801f1d223d56344640b49200633
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206695
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-09 12:48:37 +00:00
Robert Phillips
9a7c7be159 Revert "Skip flush in GrDrawingManager if the specifed proxy doesn't have any work"
This reverts commit 4187ac5e47.

Reason for revert: test if this is causing the angle GM image diffs

Original change's description:
> Skip flush in GrDrawingManager if the specifed proxy doesn't have any work
> 
> This is rather ham-fisted but I would like to have a short-term fix for the "always-flush" perf regressions.
> 
> Change-Id: Id359ad5a01a290e7e6c06f7ccc1c385ad47d2c06
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206277
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

TBR=egdaniel@google.com,bsalomon@google.com,robertphillips@google.com

Change-Id: I19ea23a6b8e3985353fc1ebaf974513bb922e9f2
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206694
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-09 12:46:27 +00:00
skia-recreate-skps
097e77cd3b Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I1c941f92dd694d04d12e909e494d3fae37fc48b6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206762
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-09 05:58:39 +00:00
skia-autoroll
696e8dda3c Roll third_party/externals/swiftshader 4ba1911b2d7f..eba396cc66d3 (3 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/4ba1911b2d7f..eba396cc66d3


git log 4ba1911b2d7f..eba396cc66d3 --date=short --no-merges --format='%ad %ae %s'
2019-04-08 bclayton@google.com Rename 'unittests' to 'gles-unittest'
2019-04-08 swiftshader.regress@gmail.com Regres: Update test lists @ 4ba1911b
2019-04-08 bclayton@google.com Replace use of ASSERT(false) with UNIMPLEMENTED


Created with:
  gclient setdep -r third_party/externals/swiftshader@eba396cc66d3

The AutoRoll server is located here: https://autoroll.skia.org/r/swiftshader-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
TBR=egdaniel@google.com

Change-Id: If7081c2e9a74f9cb265af885f775e96ca20cf595
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206811
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 05:20:29 +00:00
skia-autoroll
8f838d55a4 Roll third_party/externals/angle2 90b1865e2a8b..82418c821689 (8 commits)
90b1865e2a..82418c8216


git log 90b1865e2a8b..82418c821689 --date=short --no-merges --format='%ad %ae %s'
2019-04-09 syoussefi@chromium.org Add support for updating glslang_validator binary from Linux.
2019-04-08 syoussefi@chromium.org Add glslang and SPIRV autorollers to wrangling doc
2019-04-08 syoussefi@chromium.org Vulkan: Implement robust resource initialization
2019-04-08 shrekshao@google.com Fix formsRenderingFeedbackLoopWith check
2019-04-08 jmadill@chromium.org Remove function pointers in CopyTexture3DTest.
2019-04-08 syoussefi@chromium.org Vulkan: make sure clear value is completely initialized
2019-04-08 jmadill@chromium.org Add standalone glslang_validator as a download hook.
2019-04-08 jmadill@chromium.org Add MD browser to DEPS.


Created with:
  gclient setdep -r third_party/externals/angle2@82418c821689

The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=egdaniel@google.com

Change-Id: I1d0c34a5b74fc18ca4df2ef26dae6ef74b1c468d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206810
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 05:05:29 +00:00
skia-autoroll
643624630a Roll ../src afd96fdcf75a..79154509c679 (442 commits)
afd96fdcf7..79154509c6


Created with:
  gclient setdep -r ../src@79154509c6

The AutoRoll server is located here: https://autoroll.skia.org/r/chromium-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
TBR=egdaniel@google.com

Change-Id: I680a4b9e2c93fea132dfa2e0c40b3d20d02321e2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206809
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-09 04:54:09 +00:00
recipe-roller
0ea414a082 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/9cbb703d2234f3627a95f2fef0d75ae8e5850f75 [buildbucket] Use bb tool (nodir@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I0a816e77cb63c98342ce9b848a4e561df005991c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206710
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-09 01:27:19 +00:00
Florin Malita
7ef3e14516 [skottie] More snug kTop Shaper alignment
The current implementation relies on SkShaper ascent values for top
text box alignment, but the results are not as visually accurate as AE
(or Lottie).

Use the computed tight bounds instead.

Change-Id: I4447a834fe3cae398fc887766daa68802e7f50a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206684
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-08 22:48:08 +00:00
Greg Kaiser
2f08a4043b examples: Avoid undefined behavior
When 'int' is 32-bits, "1 << 31" is undefined.  So we avoid that
in these couple example programs.

Bug: 8968
Change-Id: Iacaa28bf46a4006de4aee90de33560911744925e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206691
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-08 22:14:49 +00:00
Mike Reed
187a91e363 undef guard for bitmap shader
Bug: skia:8937
Change-Id: I25a70f4700f2809477d31e2bf3632fa948d0bc54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206689
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-08 22:00:39 +00:00
Mike Reed
b286bc2da8 Introduce new factory for SkColorFilters
Idea: transition callers to this, so we can later typedef SkColorFilter
and SkShader to the same thing.

Bug: skia:8937
Change-Id: I000c882e11622091aa44c141aa6ddd1216414f46
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206685
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-08 21:03:59 +00:00
Herb Derby
c19cf51df4 Add maxDimension() to glyph
Expand the too large for atlas calculation. Considering making
a "small enough" function on glyph.

Change-Id: I113831f4182df0939110f651fb4a5921447124c1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206705
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-08 20:43:09 +00:00
recipe-roller
f9c5d56d14 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/1fb046306b9ebe160eeacc7843ee1ddd15a47ffa Fix UTF-8 output in gclient_utils.CheckCallAndFilter (raul@tambre.ee)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Icc3e65f4a2bc3aec1b68f7852333089abfc3016d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206761
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2019-04-08 20:10:13 +00:00
Chris Dalton
6b76df09a0 Disable output swizzling from GrDisableColorXP
This makes sure the final shader does not output a color.

Bug: skia:
Change-Id: I1e5299bb63391d6ff72598ed72fe4fb80b18fa07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206352
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-04-08 20:06:29 +00:00
Brian Osman
a5a010b8cd Update SPIRV caching to use SkWriter32/SkReader32 and allow inspection
Change-Id: I6656d971c05f0ed3515f095ffcd41ae73a5c483f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206687
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-08 19:38:58 +00:00
skia-autoroll
c328be8947 Roll skia/third_party/skcms 99740cdf2835..36eeb1311a72 (1 commits)
https://skia.googlesource.com/skcms.git/+log/99740cdf2835..36eeb1311a72

2019-04-08 mtklein@google.com update clang_win package


The AutoRoll server is located here: https://autoroll.skia.org/r/skcms-skia-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux-blink-rel
TBR=egdaniel@google.com

Change-Id: I49e77b51613fe8ce5e809db4481d02ec58960e5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206760
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-08 19:23:28 +00:00
Brian Osman
6b797fec83 Simplify persistent cache code, make GLSL easier for tools to access
Using SkWriter32/SkReader32 cleans up the construction and unpacking of
cache entries (I first tried adding a dedicated class to manage this,
but it added too much scaffolding). Importantly, this also externalizes
the GLSL packing/unpacking so that other tools (GLSL inspector, offline
compiler dumps, etc...) can also unpack the cache entries.

For the cache entries that will never be inspected, we can leave their
serialization code in the relevant backend location. Putting the GLSL
(and later SPIR-V) serialization in helpers seems like a good
compromise (given that it doesn't require any backend types).

Change-Id: I9e8ccc458939ae30e18bc67f9161dbffa1648bda
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206702
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-08 18:51:28 +00:00
Chris Dalton
8e30ad439b Add a mustWriteToFragColor() workaround flag
Bug: skia:
Change-Id: Ifeff01125ebe5418d4632ffe2422140944e44469
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206351
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-08 18:48:04 +00:00
Brian Salomon
e05ba5a0db Start on supporting transfer from GrSurface.
This only implements the GrGpu level functionality and is not exposed in
the public API.

Currently implemented for OpenGL only.

Bug: skia:8962

Change-Id: I8e58c1860185aa913bcdb0954908ce9e0b8e78f3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206383
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-08 18:28:24 +00:00
Mike Reed
655f0b9c9a add flag to stage API change
Bug: skia:8937
Change-Id: I7882870677711409505cadfa8b7abe1130db8c72
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206683
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-08 18:13:59 +00:00
Herb Derby
7b56b0ae39 Do not use sub-pixel positioning for source space
Since the source space drawing modes call getGlyphMetrics with
the point {0, 0}, just turn of sub-pixel positioning. This uses
a more efficient code path in the strike

Change-Id: I360f56e1eede776dfa82db6b780b88c1fda50d36
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206701
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
2019-04-08 18:12:44 +00:00
Mike Reed
c67e0067b0 extend guard to makeAsALocalMatrixShader for google3
Change-Id: I245dbeecbd12f0f79f824d6fff7f0253e7748252
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206682
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-08 18:08:54 +00:00
Hal Canary
cfb0e026fe SkPDF: device to use SkTCopyOnFirstWrite<SkPaint>
Change-Id: I6490faf3b3f27c3f4b3dbd918260f85c12952d39
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206205
Auto-Submit: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-08 18:01:39 +00:00
Nathaniel Nifong
4c30340358 add SkpFilePlayer to externs
Bug: skia:
Change-Id: I190b6ac004f68f699cab2ec38b7af25e5113e335
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206680
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2019-04-08 17:57:04 +00:00
Mike Reed
50acf8f04b add makeShader() to SkBitmap, and deprecate SkShader version
Bug: skia:8937
Change-Id: I42f011e04937a751222bd8ecc6c69b45cf9626a2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206681
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-08 17:56:34 +00:00
Herb Derby
7a2ff3c9a8 Handle translating blob to origin in bulk
Move all the glyphs in bulk. Handling the origin
translation will be needed to use the bulk APIs.

Change-Id: Ic38ebc8504d874367e4a7291e26f3dfc2c59222b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206397
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-04-08 17:42:43 +00:00
Robert Phillips
4187ac5e47 Skip flush in GrDrawingManager if the specifed proxy doesn't have any work
This is rather ham-fisted but I would like to have a short-term fix for the "always-flush" perf regressions.

Change-Id: Id359ad5a01a290e7e6c06f7ccc1c385ad47d2c06
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206277
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-08 17:32:02 +00:00
Kevin Lubick
f58e49f8e9 Initialize unfilled textures based on GrCaps
This is especially relevant on WebGL, where there
can be a large performance hit to dealing with
uninitialized textures.

Change-Id: Ic8469ec833464a88fe846c72fc02a9af5d43d0d5
Bug: skia:8378
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206396
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2019-04-08 17:15:32 +00:00
Michael Ludwig
beb7cd291a Reland "Support clip masks for SaveLayerRec and drawSpecial in Ganesh"
This reverts commit 3c3b194f3b.

Reason for revert: Seems to be a problem with Inteliris 655, which already
 has an extensive blacklist, so adding this test to it

Original change's description:
> Revert "Support clip masks for SaveLayerRec and drawSpecial in Ganesh"
>
> This reverts commit 053b293993.
>
> Reason for revert: breaks on Intel Vulkan
>
> Original change's description:
> > Support clip masks for SaveLayerRec and drawSpecial in Ganesh
> >
> > Change-Id: I2e37e28fcbd3631bccc65253604015871503a089
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205929
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> > Reviewed-by: Robert Phillips <robertphillips@google.com>
> >
> Change-Id: Ic230fa9bcb16c97f218b94922a280f5b86a90491
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206203
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 8961
Change-Id: Ie32071bc2be7501066f7b6cf6d40cfb48dbd9986
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206393
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-04-08 17:01:12 +00:00
Ethan Nicholas
0d997665e6 Revert "Reland "Revert "Reland "GPU support for SkMixers""""
This reverts commit 1263889f3a.

Bug: skia:
Change-Id: I647cb228e4a8169f12f4afadaf1db06843e4e5fd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206391
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-08 16:47:03 +00:00
Mike Reed
7656b2c18c Revert "Revert "Move localmatrix routines to shaderbase, no need to be public.""
Re-add old API behind guard.

This reverts commit f88a0e1c91.

Bug: skia:8941
Change-Id: Id8f211568ce381adc9cae8be01202a83f42da6a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206384
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-08 16:26:12 +00:00
Ethan Nicholas
9a324f210f fixed ArithmeticImageFilter input type
The recent change to SkSL input precisions was causing a problem in
ArithmeticImageFilter, where it specifies a half4 input (therefore
implying an SkPMColor) but the code actually passes a float[4] in.

Bug: skia:
Change-Id: Icbe4b60baeda9d0dad3946b1a64cb3e93d117f88
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206204
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-08 16:09:02 +00:00
Nigel Tao
10ca6ffb67 Update Wuffs version
This pulls in the Wuffs bug fix for MSVC:
ed52fdecb9
"Rework how we avoid clang's -Wunused-function".

Bug: skia:8235
Bug: skia:8764
Change-Id: I890066e47f61213101b9c8822b1ec60d22584f75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206142
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2019-04-08 15:56:12 +00:00
Mike Klein
befc7cf165 fm_bot: look for and explain too-late flags
Change-Id: I9746fb5215d449b030ecfde6051fa6a69d2e7556
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206580
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-08 15:55:10 +00:00
Mike Reed
7c18eb9dc5 Reland "Revert "Move localmatrix routines to shaderbase, no need to be public.""
This reverts commit 12b4902e50.

Reason for revert: hmmm, where is my guard?

Original change's description:
> Revert "Revert "Move localmatrix routines to shaderbase, no need to be public.""
> 
> Need to guard this for google3
> 
> This reverts commit f88a0e1c91.
> 
> Change-Id: Ia169610898c6276ae5af8a869ecc9672f6f4f285
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206264
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>
> Auto-Submit: Mike Reed <reed@google.com>

TBR=reed@google.com

Change-Id: Ibfb21fa248efbafe4ce3909ec3a1af5cffb221de
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206398
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-08 15:46:14 +00:00