Commit Graph

41117 Commits

Author SHA1 Message Date
recipe-roller
b0ababfe5a 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/9f74913e5162b45b1d14c417a4accb04967a3f90 Roll vpython to git_revision:2973c0809cdc7122b7123e42b163a54d4983503f. (jbudorick@chromium.org)
  https://crrev.com/dbc721d65f0db44bc1341509c92c66664fd5978e Add gclient recipe_modules config for emscripten_releases LUCI project (dschuff@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I291a8704d20a4b5605ed7f8f61b0fad0a5d95b0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206174
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-04 23:37:00 +00:00
Ben Wagner
51874e3e37 Allow selection of shaper wrapping algorithm.
Change-Id: I8103348de810863088758d26b6b2d8062827105e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206170
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-04 21:03:00 +00:00
Hal Canary
5c83ae81aa SkPDF: Use fewer complex PathOps to speed up clipping
Test from bug is 200x faster

Bug: chromium:947381
Change-Id: Ie3fc38d2b39cb8d8fc70d388a25464fcbb1eaa54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206166
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-04 20:32:30 +00:00
Malay Keshav
e4628b1072 Make SkRRect work with axis aligned rotation transforms
This patch allows SkRRect::trasform() work with any axis aligned matrix
transform meaning it now works with a rotation of 90 or 270 degrees.

Adds relevant unit tests.

Bug: skia:8944
Change-Id: I63678ec0e3556c181517526de55d84666afeb681
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205860
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-04 18:43:30 +00:00
Kevin Lubick
e21616804a [canvaskit] Bump GPU resource cache to 256MB
Change-Id: I057c1af8bd7789433ac41904c45a3f8ba2fdb7e9
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206078
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-04 18:04:39 +00:00
Brian Salomon
d538d3df27 Handle promise texture image fulfill returning nullptr.
Bug: chromium:948249
Change-Id: Id5d9b732a0d9612b7ed562041fa3544fd7c39f71
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206076
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-04 18:04:19 +00:00
Florin Malita
e797dfba63 Revert "[canvaskit] Bump GPU resource cache to 256MB"
This reverts commit a93aa74a39.

Reason for revert: Busted skottie.skia.org

Original change's description:
> [canvaskit] Bump GPU resource cache to 256MB
> 
> Bug: skia:
> Change-Id: I398ef2e79076018f3f62e62a2040052eeaf60784
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206066
> Commit-Queue: Florin Malita <fmalita@chromium.org>
> Reviewed-by: Kevin Lubick <kjlubick@google.com>

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

Change-Id: I0e6181a6ded0adc40531f936fc495f89400516a1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206077
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-04 16:53:41 +00:00
Florin Malita
b161a7d965 [skottie] Fix gradient ramp interaction with non-atomic draws
Currently, shader effects are applied via layers for non-atomic draw fragments.

This is incorrect, as shaders on layer paints are ignored.

Update to always propagate the shader to leaf node paints.

Change-Id: I59f5a5b874e87827f61844969550600fa39e22a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205931
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-04 16:52:59 +00:00
Robert Phillips
b166469fdd Blacklist two more GMs for gltestthreading
These two GMs started having 1-2 magnitude diffs after the following CL landed:

https://skia-review.googlesource.com/c/skia/+/205584 (Stop using pendingIO in read/writeSurfacePixels)

This is because in the non-threaded case, Ganesh now always flushes when the SWMash helper uploads a mask - changing how backing GrSurfaces are reused.


Change-Id: I5061d0bc79ea958f6ff8984c392d0baeb3cc298c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206069
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-04-04 16:46:59 +00:00
Ethan Nicholas
ca664a4805 fixed skslc crash when the last token in a file is invalid
Bug: skia:8832
Change-Id: I691c1129e8dbdaad0446a166d0ae865d9ee59048
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206074
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-04 16:24:49 +00:00
Brian Salomon
8cefa3ed35 Avoid flushing due to cache pressure when nothing will become purgeable.
Bug: skia:8927
Change-Id: I3d92868ebf133ebbf229a9349a0194a9ffe35ad0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205921
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-04 16:12:59 +00:00
Greg Daniel
ee54f23b79 Batch up pipelineBarrier calls in vulkan.
Bug: skia:8933
Change-Id: I1bc8b2f8b9292334edef1de748ee2d553006d9fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205924
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-04-04 15:56:39 +00:00
Florin Malita
a93aa74a39 [canvaskit] Bump GPU resource cache to 256MB
Bug: skia:
Change-Id: I398ef2e79076018f3f62e62a2040052eeaf60784
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206066
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-04 15:49:01 +00:00
Hal Canary
d61446666e Examples: compile faster
17m42.185s --> 0m10.665s

Change-Id: I2de9ddf9860f680e64e7c333e2e90755b050cf91
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204541
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-04 15:43:59 +00:00
Mike Reed
e2aa08bf19 Reland "rely on clients to opt in to legacy enums"
This reverts commit 68cbc925ec.

Reason for revert: guard added to google3

Original change's description:
> Revert "rely on clients to opt in to legacy enums"
> 
> This reverts commit 98f4e81d49.
> 
> Reason for revert: prolly broke google3
> 
> Original change's description:
> > rely on clients to opt in to legacy enums
> > 
> > Bug: skia:8937
> > Change-Id: I4cd9d44e87ce3309884d563c8e11336f0c39faf0
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205934
> > 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: I1a14e531b3718e27e161544dbc44d55582e1f83a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:8937
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206064
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=reed@google.com

Change-Id: I929fa97e05f76d50c6c3266f434c1d06803bdc30
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8937
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206073
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-04 15:23:21 +00:00
Ben Wagner
1383a38e1d Allow users to create stock shaping iterators.
This provides a way to re-use the existing basic shaping iterators.

Change-Id: I148dd513dcd01381301e7835672d0d605c1c462b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205933
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2019-04-04 15:04:59 +00:00
Robert Phillips
cd657f1d97 Revert "Stop using pendingIO in read/writeSurfacePixels"
This reverts commit 76cf552e28.

Reason for revert: Maybe breaking some bots

Original change's description:
> Stop using pendingIO in read/writeSurfacePixels
> 
> This changes the implementation to always flush for these operations.
> Once partial DAG flushes are implemented this behavior will be better than the old method.
> 
> Change-Id: I1f9edd33dcf5aa15cc5dcdf8f0e06a3b3cd88f48
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205584
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>

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

Change-Id: If3e8cc9a6e92b98f85bc3faf2b99fba7395ec946
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206067
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-04 14:24:42 +00:00
Mike Reed
68cbc925ec Revert "rely on clients to opt in to legacy enums"
This reverts commit 98f4e81d49.

Reason for revert: prolly broke google3

Original change's description:
> rely on clients to opt in to legacy enums
> 
> Bug: skia:8937
> Change-Id: I4cd9d44e87ce3309884d563c8e11336f0c39faf0
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205934
> 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: I1a14e531b3718e27e161544dbc44d55582e1f83a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:8937
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206064
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-04-04 14:16:01 +00:00
Kevin Lubick
a064c2812e [canvaskit] Make SkImageShader from SkImage
This removes a few src/ includes as well, to avoid using private
implementations like we did.

Change-Id: Ic9a21d04a131c30e17dfca6d8ea45bdefd362aa7
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/206062
Reviewed-by: Mike Reed <reed@google.com>
2019-04-04 13:42:41 +00:00
Ethan Nicholas
f06576b9af SkSL now properly errors when invocations are used outside of a geometry shader
Bug: skia:8843
Change-Id: Ibe1e57358520bc989dd5e479aaa1dd38fe573d5c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205928
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2019-04-04 13:18:19 +00:00
Robert Phillips
76cf552e28 Stop using pendingIO in read/writeSurfacePixels
This changes the implementation to always flush for these operations.
Once partial DAG flushes are implemented this behavior will be better than the old method.

Change-Id: I1f9edd33dcf5aa15cc5dcdf8f0e06a3b3cd88f48
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205584
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-04 13:04:39 +00:00
Kevin Lubick
ee91c07a76 [canvaskit] adding drawAtlas to canvas API
Also re-works colors in the JS part to be unsigned,
so there's less chance for oopsies when passing them
to the C++ side.

Change-Id: I3f56d22e873e1407c402606444c50b76dd34ffd4
Bug: skia:
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204543
Reviewed-by: Mike Reed <reed@google.com>
2019-04-04 13:03:35 +00:00
Mike Reed
98f4e81d49 rely on clients to opt in to legacy enums
Bug: skia:8937
Change-Id: I4cd9d44e87ce3309884d563c8e11336f0c39faf0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205934
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-04-04 12:56:29 +00:00
Greg Daniel
f346df396a Minor refactoring of where we call addingWork in GrVkCommandBuffer.
This is a quick refactor that a pulled out to setup for a follow on change.

Bug: skia:
Change-Id: I3be36b44396e7b72abe5d9627c92263ee13b529a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205923
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-04 11:46:19 +00:00
skia-recreate-skps
dde12a25bb Update go_deps asset
Automatic commit by the UpdateGoDEPS bot.

TBR=borenet@google.com

Change-Id: I63cb58322976946909cac90e07b0d88b3a05a36c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205976
Reviewed-by: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Commit-Queue: <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2019-04-04 05:45:59 +00:00
skia-autoroll
74c61cd2f1 Roll ../src 38969ffb5d49..3ae962179e68 (476 commits)
38969ffb5d..3ae962179e


Created with:
  gclient setdep -r ../src@3ae962179e

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=jlavrova@google.com

Change-Id: I8f26cd1cc17775876fa7274047516736cb948c47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205983
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-04 05:18:59 +00:00
skia-autoroll
74d11186fe Roll third_party/externals/angle2 89899748a858..43997017b0ed (9 commits)
89899748a8..43997017b0


git log 89899748a858..43997017b0ed --date=short --no-merges --format='%ad %ae %s'
2019-04-04 syoussefi@chromium.org Vulkan: fix non-float clear with draw
2019-04-03 syoussefi@chromium.org Vulkan: Allow vertex-only pipelines
2019-04-03 jmadill@chromium.org Minor cleanups to run_code_generation.
2019-04-03 jmadill@chromium.org Add presubmit to commit queue.
2019-04-03 jmadill@chromium.org Fix OOB access for dynamic attribs with offsets.
2019-04-03 syoussefi@chromium.com Disable Clear and TextureUpload perf tests on D3D11
2019-04-03 jmadill@chromium.org D3D11: Skip DepthTexturesWithMipmaps on AMD/D3D11.
2019-04-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/glslang/src e0d59bbe1857..ef807f4bc543 (1 commits)
2019-04-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll ./third_party/spirv-tools/src 320a7de5c9a5..e2ddb9371edb (3 commits)


Created with:
  gclient setdep -r third_party/externals/angle2@43997017b0ed

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=jlavrova@google.com

Change-Id: I7726bc40e831c5b6b618d9851adb1ff22fc2976b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205981
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-04 04:51:39 +00:00
skia-autoroll
b06a0c63c9 Roll third_party/externals/swiftshader 2b9fb4bf5ece..225a13016b1c (11 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/2b9fb4bf5ece..225a13016b1c


git log 2b9fb4bf5ece..225a13016b1c --date=short --no-merges --format='%ad %ae %s'
2019-04-03 bclayton@google.com Implement dynamic buffer offsets.
2019-04-03 sugoi@google.com Removed SwiftShader's custom DrawType enum
2019-04-03 chrisforbes@google.com Add support for OpKill
2019-04-03 bclayton@google.com VkPipeline: Add basic optimization passes.
2019-04-03 bclayton@google.com SpirvShader: Ignore unreachable inputs for Phis.
2019-04-03 bclayton@google.com Regres: Reduce dEQP logging efforts
2019-04-03 bclayton@google.com Regres: Remove hack to always start with a daily test
2019-04-03 bclayton@google.com Regres: Include failure reasons in CI message
2019-04-03 bclayton@google.com Regres: Really kill timed-out processes
2019-04-03 bclayton@google.com Regres: Changes to reduce timeouts
2019-04-03 swiftshader.regress@gmail.com Regres: Update test lists @ 2b9fb4bf


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

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=jlavrova@google.com

Change-Id: Ia43bbbdeb59663f5cfc2893cf2afa43c5189564b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205982
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-04-04 04:38:09 +00:00
recipe-roller
b6d04556c3 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/b8268cad11b722e682b519f78990205f3f98f6c0 Reland "git cl status: differentiate "dry-run" from generic "commit"." (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Id80802ccbfca55e26d012c93c89bc2a950d9eac2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205968
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-04 00:27:37 +00:00
Mike Reed
5c5de21463 no more legacy enum references
Bug: skia:8937
Change-Id: I64ba9dffe340769ead0de54a82cd32b61f87c57d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205838
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-03 21:24:17 +00:00
Hal Canary
3571169f51 Fix SkTypeface_Mac::getGlyphToUnicodeMap
Fix the slow fallback to actually fill out the table.

Always use the first non-zero glyph to codepoint mapping.

Change-Id: Ib76daecee21d1b81b7c6e0361e7d8aae5494b19a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205925
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
2019-04-03 21:10:37 +00:00
Florin Malita
866e262a21 [skottie] Fix gradient ramp for non-solid layers
Two issues:

  1) Empirically (per AE's model), only solid layers transform the effect space.
     All other layer types implement their effects ignoring the layer xform.

  2) Due to the effect deferral mechanism in sksg, shader effects are
     sometimes applied with a different transform than intended.

To address #1, tweak the layer builder logic to attach the effects
before/after the transform node, depending on the layer type.

For #2, track the CTM active when the shader effect is attached and undo
any intervening transformations via a local matrix when the shader is
actually applied to SkPaint.

Change-Id: I29b5a4df3b223e7da9dfc36b0d7d40055d192ac0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205922
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-04-03 20:46:35 +00:00
Ethan Nicholas
147c08709e fix SkSL constant comparisons involving negated vectors
Bug: skia:8852
Change-Id: I8ff7c0b38f32a6cb908f9067bb473aa779f1518c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205835
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-03 20:34:25 +00:00
Ethan Nicholas
595540b321 fixed error reporting in SkSL->Metal
Bug: skia:8843
Change-Id: Ie27e805fb4fc1efd34253645cb82cc88f682884d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205926
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-04-03 20:32:04 +00:00
Herb Derby
2273c900ea GM for SkOverdrawCanvas
Change-Id: Ice39bca25df0255448dce726e5c0d86dce889a60
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205940
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2019-04-03 20:28:54 +00:00
Chris Dalton
a8fbeba6cb Add a cap to allow coverage counting or not
We don't want to just disable the "ccpr" path renderer anymore (or
whatever it should be called), because we are adding an MSAA
implementation. This new cap will eventually tell ccpr whether it can
use coverage counting, or if it should just use the MSAA impl.

Bug: skia:
Change-Id: Ie6e5ca1a637ca4408bc6bb844153afa9da26f58e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204883
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-04-03 19:39:24 +00:00
Mike Klein
22a5e345c9 set PNG compression level back to 1
On my machine, this cuts the CPU time to run all GMs and write out
PNGs by about half, from ~67s to ~34s (wall, 4s -> 3s).  File size
goes from 148M to 180M, about a 22% increase.

Change-Id: I50f051e5c87cc6854797d6838e0342cbd7e95003
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204130
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
2019-04-03 19:39:05 +00:00
Chris Dalton
baa1b357ef Rename GrPipeline::Flags to GrPipeline::InputFlags
Renames the Flags to InputFlags and makes it a strongly typed enum.
Simplifies the relationship between GrSimpleMeshDrawOpHelper::Flags
and GrPipeline::InputFlags.

Bug: skia:
Change-Id: Ia25b8526ff96a47428dfbb82da18dbebdd382c5b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/204906
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-04-03 19:29:54 +00:00
recipe-roller
908413c8cb 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/25eb154c14012bdd38e975769bd6257820d924f3 Add angle_root custom var to ANGLE gclient config. (jmadill@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ice2f6941f538544158a505a76573d4348e103091
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205837
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-03 18:40:24 +00:00
Robert Phillips
04d2ce2df4 Reset GrVkCommandBuffer's work status in end()
Since GrVkCommandBuffers are recycled, the persistant work status was disabling the skipping of empty flushes

Change-Id: Id551b967a8a73c07f802a393ba00053a0115e96b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205834
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-04-03 18:23:52 +00:00
Herb Derby
8557174e34 Remove SkFindAndPlaceGlyph from gn
Change-Id: I66274290ce56104a33b9c9b2196bd87675d64c9d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205839
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-03 18:14:20 +00:00
Brian Salomon
2c791fcdf2 Track the number of resources that would become purgeable after flush
in GrResourceCache.

Bug: skia:8927
Change-Id: Ia00ba0ea541a22e29e9a8208044e1fabd5296782
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205484
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-04-03 18:06:08 +00:00
Brian Osman
f71b070ffd Fix the GLSL persistent cache (and add a config to test it)
We need to store (up to) three GLSL strings in the cache entry,
along with the bookkeeping to reconstruct them. To make things
simpler, we now store the null terminators.

Change-Id: Ic4fe03cb5d774464372ceec8740da1bfe9069550
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205823
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-04-03 18:05:22 +00:00
Michael Ludwig
31ba7182d5 Support strict constraints for bulk texture sets
Change-Id: I67f2f60d4a8913c7ae18bfbea68825294b693562
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205824
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-04-03 18:01:02 +00:00
Hal Canary
0f2f522246 SkMD5 returns digest
Change-Id: I9eb9095131adb5862d286b211501bf194ef8e91e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205822
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2019-04-03 17:52:22 +00:00
Herb Derby
73f23f97df Move overdraw canvas to using new painter
Change-Id: I8b7cda23fd244e03dfac1cdadbe7826532cfe99a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205828
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-04-03 17:32:23 +00:00
Mike Klein
d0389c596d split cpu+gpu work queues
Split work queues for CPU and GPU, assigning using a --backend
whitelist.  This lets us up the CPU process limit to NumCPUs,
while keeping the GPU process limit at 8.

On my desktop this speeds up this mixed workload about 2x:

cat <<EOF | go run tools/fm/fm_bot.go -quiet -script - out/fm
    b=cpu gms ct=8888 w=$WHERE/8888 legacy=true  # old and busted
    b=cpu gms ct=8888 w=$WHERE/srgb              # new hotness
    b=gl  gms ct=8888 w=$WHERE/gl
    b=mtl gms ct=8888 w=$WHERE/mtl
    b=cpu gms ct=565  w=$WHERE/565
    b=cpu gms ct=f16  w=$WHERE/f16
    b=skp gms         w=$WHERE/skp
EOF

Before:        44.37 real       303.87 user        15.40 sys
After:         21.87 real       480.05 user        27.10 sys

Change-Id: Ibea4537c8cdf278f8e4621f26ebacd942952eec3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205833
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-03 17:12:33 +00:00
Brian Osman
fbe2406693 Reland "Remove the NullGL interface (and associated test context)"
This reverts commit 215da624d1.

Reason for revert: Blink issues ironed out.

Original change's description:
> Revert "Remove the NullGL interface (and associated test context)"
> 
> This reverts commit de206c75c2.
> 
> Reason for revert: Chrome is having issues with the switch to Mock in blink tests.
> 
> Original change's description:
> > Remove the NullGL interface (and associated test context)
> > 
> > Bug: skia:
> > Change-Id: Ie3c9ee39fc1e0a4406de085c60d8433ffb4419df
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/203708
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Commit-Queue: Brian Osman <brianosman@google.com>
> 
> TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com
> 
> Change-Id: Iff0cbf29dcea26957efc800a8c33d0ad8285de0a
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205343
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

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

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

Bug: skia:
Change-Id: I1f4fbbcb00f302c5d830cb1392badd6ec7a33c69
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205832
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-04-03 16:38:10 +00:00
Mike Klein
1450a47409 support comments
E.g.

    cat <<EOF | go run tools/fm/fm_bot.go -processLimit 0 -quiet -script - out/fm
        b=cpu gms ct=8888 w=$WHERE/8888 legacy=true  # old and busted
        b=cpu gms ct=8888 w=$WHERE/srgb              # new hotness
    EOF

Change-Id: Ia92ba113ae95478313e1f2cc18b7270ea1aa8a42
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205831
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-03 16:00:00 +00:00
Mike Klein
4daf637187 add --legacy to fm, legacy=true to fm_bot
E.g.

    ~/skia (make-from-memory↑2|●1…) $ cat test.sh
    #!/bin/bash

    set -e
    set -x

    WHERE=${1:-foo}

    ninja -C out fm

    rm -rf $WHERE
    mkdir -p $WHERE

    cat <<EOF | go run tools/fm/fm_bot.go -processLimit 0 -quiet -script - out/fm
        b=cpu gms ct=8888 w=$WHERE/8888 legacy=true
        b=cpu gms ct=8888 w=$WHERE/srgb
        b=cpu gms ct=565  w=$WHERE/565
        b=cpu gms ct=f16  w=$WHERE/f16
    EOF

    ~/skia (make-from-memory↑2|●1…) $ time ./test.sh
    + WHERE=foo
    + ninja -C out fm
    ninja: Entering directory `out'
    ninja: no work to do.
    + rm -rf foo
    + mkdir -p foo
    + cat
    + go run tools/fm/fm_bot.go -processLimit 0 -quiet -script - out/fm
           11.81 real       318.92 user        14.51 sys

    ~/skia (make-from-memory↑2|●1…) $ idiff foo/8888/ foo/srgb/
    671 files are identical.
    25 diffs written to diff.html

Change-Id: I01fe1ceeada971d8d18efc11961b9f753624fcf2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/205830
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-04-03 15:52:40 +00:00