Commit Graph

45305 Commits

Author SHA1 Message Date
Ben Wagner
c21705992f [infra] Upgrade NVIDIA driver
Bug: skia:9652
Change-Id: I5a8b1e4468daf7201effa866404fab8fbe312a77
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256417
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-11-26 20:45:04 +00:00
Greg Daniel
ada451ca67 Return a size of 0 for external format GrSurfaces.
This fixes a case where Chrome was hitting the assert in ComputeSize that
colorSize > 0. In general this shouldn't affect our memory/budget tracking
since external textures are generally given to us as wrapped borrowed textures
so they're memory was not counted against our budget to begin with.

Change-Id: I2fd4eaaab52d9c3dc1af3a8f5b59a1b1f3c5dbb7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256656
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-11-26 20:35:34 +00:00
Greg Daniel
0addbdf0fb Cleanup GrVkCommandBuffer resource ownership and freeing.
This is a pre-cl to correctly handle failures in GrVkCommandBuffer to
hopefully make things more simple.

Bug: skia:9603
Change-Id: Iefdf2bbde5d5ec778aad50341772d0c88a97cda5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256418
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-11-26 20:34:34 +00:00
Robert Phillips
c15e890cc7 Move the initial GrProgramDesc keyLength into the header
This sets up for moving GrProgramDesc creation to GrCaps. I.e., we will have a virtual "GrProgramDesc GrCaps::makeDesc(const GrRenderTarget*, const GrProgramInfo&)" call.

Bug: skia:9455
Change-Id: I82053297383af9d405e6b485bf8287f10fa15967
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256696
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-26 20:28:34 +00:00
Ben Wagner
616aa01b29 [infra] Upgrade Intel Skylake driver
Bug: skia:9652
Change-Id: I86da27902a22ae11f7b442e4a616d3127798f69a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256358
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-11-26 19:59:54 +00:00
Jim Van Verth
55276e3e01 Enable cross-context textures in Metal.
No work needs to be done in Metal for cross-context textures. Metal
automatically places a barrier between different command buffer
encoders, and Skia and the external client will implicitly be using
different encoders.

Bug: skia:8243
Change-Id: I0c855e2d78aa8973f389108483184947f019342c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256699
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2019-11-26 19:41:24 +00:00
Florin Malita
466f571a51 [skottie] Handle null mask filter effects gracefully
We allow animating the mask filters, so we can end up with null filters
sometimes.

TBR=
Change-Id: Id93aa033407f58bfeb5e059210141c936c356701
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256697
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-11-26 19:09:04 +00:00
Eric Boren
882115da6b [infra] Make CheckGeneratedFiles use Clang
Bug: skia:9675
Change-Id: Ie9fcd38a4d6c1e369bb2c3740de664a87d1a322c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256660
Reviewed-by: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2019-11-26 18:04:44 +00:00
Robert Phillips
933484f6bb Stop using GrPixelConfig in Metal & Dawn's GrProgramDesc creation
In order to be able to create GrProgramDescs pre-flush we would like as little reliance on the GrRenderTarget as possible (also GrPixelConfig is going away).

Bug: skia:9455
Change-Id: Ie35c87758bb1ed97c99c6e9e130eaeb3355f4139
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256457
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-26 17:51:34 +00:00
Mike Reed
7d34dc7747 Revert "Revert "switch to new filltype for SkPath""
This reverts commit 3e7af41224.

Change-Id: Id4f66b3956f4bdbe690db20fc478b7365ee89717
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256676
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2019-11-26 17:43:14 +00:00
Emircan Uysaler
17096c763c Revert "Disable VkProtectedContext_DDLMakeRenderTargetTest"
This reverts commit 6b4afb27fd.

Reason for revert: Fuchsia fix landed on https://bugs.fuchsia.dev/p/fuchsia/issues/detail?id=40061#c11.

Original change's description:
> Disable VkProtectedContext_DDLMakeRenderTargetTest
> 
> Bug: fuchsia:40061
> Change-Id: I9d6293298bc27b81f5b4202d56c930f976c86cfc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254336
> Commit-Queue: Emircan Uysaler <emircan@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,emircan@google.com

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

Bug: fuchsia:40061
Change-Id: I3db60ae3376cd8fe1719b482d2788eb9d48338f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256659
Reviewed-by: Emircan Uysaler <emircan@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2019-11-26 15:59:04 +00:00
Brian Osman
4449f1f3fa Remove ResourceProvider and ImageAsset sample impls from skottie
All tools are updated to use the new copies in skresources

Change-Id: If3cfc3104d72535ea4c49f70f1fa68dcf78af987
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256657
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Brian Osman <brianosman@google.com>
2019-11-26 15:47:14 +00:00
Michael Ludwig
704d5408db Allow Tessellator to operate on provided GrQuads
To facilitate this, the GrQuadBuffer::Iter's local GrQuads that are
modified on each next() are now allowed to be operated on for the AA
inset/outsetting. Previously this required additional GrQuads on the
stack to hold the results, and additional guards for accessing localQuad()
when the entry didn't have actual coords.

With this change, a 2D op should have its device and src GrQuads' Ws
set to 1 once, and then they are completely ignored for all iteration
and tessellation, without any more redundant initialization. In all
likelihood we won't see the needle move on powerful platforms, but may
help lower end devices.

Change-Id: I457205786766403a760918e779d36ba056d69cde
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256097
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2019-11-26 14:57:44 +00:00
Brian Osman
849f4d6571 Copy SkottieUtils' classes into skresources
For now, we'll have two copies. Once clients are using the skresources
versions exclusively, we can remove the originals from skottie.

Change-Id: I3152f526b0505b8374bdd9b4513a80bddc702ccc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256416
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-11-26 14:25:44 +00:00
skia-autoroll
40a7dfc268 Roll third_party/externals/angle2 e9b68f332a30..f65b212492ec (10 commits)
e9b68f332a..f65b212492

git log e9b68f332a30..f65b212492ec --date=short --first-parent --format='%ad %ae %s'
2019-11-25 felipearchondo@google.com [fuchsia] Change all Angle Presents to Present2s
2019-11-25 courtneygo@google.com Vulkan: Fix validation issue with swiftshader
2019-11-25 flibitijibibo@gmail.com Implement BaseVertex draw calls for Vulkan, OpenGL, NULL contexts.
2019-11-25 jmadill@chromium.org Update codegen presubmit error.
2019-11-25 lehoangq@gmail.com Metal: support ANGLE_instance_arrays/EXT_instance_arrays
2019-11-25 jmadill@chromium.org Fix header typo in rapidjson.
2019-11-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-headers/src 24347673152e..2b89fd4e2734 (1 commits)
2019-11-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 131a1ba8d06a..afc52b0b26d7 (7 commits)
2019-11-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 43fe7bafb14e..38b4db48f98c (4 commits)
2019-11-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/spirv-tools/src 45dde9ad6dde..85f3e93d13f3 (1 commits)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bungeman@google.com
Change-Id: I564f1577fc81bc6ee85695ffa1f4d9004fdbb482
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256535
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-26 06:27:43 +00:00
skia-autoroll
54036c9b8e Roll ../src 0ec8ef3c9f4f..92fe999ae056 (465 commits)
0ec8ef3c9f..92fe999ae0


Created with:
  gclient setdep -r ../src@92fe999ae0

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: bungeman@google.com
Change-Id: I2fb3a400b817d3d75457c2538d62ac8be19df873
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256556
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-26 04:35:43 +00:00
skia-autoroll
796421228b Roll third_party/externals/swiftshader d44d61514749..f2637d0dd7eb (9 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/d44d61514749..f2637d0dd7eb

git log d44d61514749..f2637d0dd7eb --date=short --first-parent --format='%ad %ae %s'
2019-11-25 jonahr@google.com Present should return OUT_OF_DATE if the window size outdated
2019-11-25 cwallez@chromium.org Make GN builds produce an ICD JSON in the build dir
2019-11-25 chrisforbes@google.com Add missing vkCmdSetLineStippleEXT function
2019-11-25 sugoi@google.com Improved pNext pointer handling
2019-11-25 awoloszyn@google.com Fix vkQueuePresentKHR is pResults is not null.
2019-11-25 swiftshader.regress@gmail.com Regres: Update test lists @ d44d6151
2019-11-25 kadam@inf.u-szeged.hu ExecutionEngine: add preliminary support for COFF ARM64
2019-11-25 bclayton@google.com Fix build: Do not return stack temporary.
2019-11-25 bclayton@google.com Fix chrome build: Use spaces (not tabs) in .gn files (2/2)

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bungeman@google.com
Change-Id: I5878475e5df432990b4b311741a111c42d12f859
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256534
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-26 04:32:33 +00:00
Mike Reed
3e7af41224 Revert "switch to new filltype for SkPath"
This reverts commit 3a50981a83.

Reason for revert: chrome win build found compile-problem in xpsdevice

Original change's description:
> switch to new filltype for SkPath
> 
> Change-Id: I7793324a9acf4afb0eb38c1e20fbb38eac25d636
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256102
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Mike Reed <reed@google.com>

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

Change-Id: Iacb3566da61c2512b9bd6b7e42b592febc85e031
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256530
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2019-11-26 03:34:30 +00:00
Florin Malita
74f2fb558f [skottie-wasm] Disable image pre-decoding
After [1], we can rely the image decode cache to amortize large image
decoding.

[1] https://skia-review.googlesource.com/c/buildbot/+/256364

TBR=
Change-Id: I01d7e923aed927ecbf8c0584bac4e62901628523
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256456
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-11-26 02:09:46 +00:00
recipe-roller
4f90f9d831 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/5504dc6427fbb01b66c0cd4f2eff17928b7151b2 depot_tools: Add ehmaldonado@google.com to OWNERS. (ehmaldonado@chromium.org)
  https://crrev.com/83aafc979fa6536d4d38b18b51e972bdeccdf1d3 depot_tools: Make gsutil compatible with python3. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I11125937a209751bbff9a5306c5de58d0278b681
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256536
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-11-25 23:59:16 +00:00
Mike Reed
3a50981a83 switch to new filltype for SkPath
Change-Id: I7793324a9acf4afb0eb38c1e20fbb38eac25d636
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256102
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2019-11-25 22:31:46 +00:00
Greg Daniel
32d6c8d024 When wrapped, store ref to GrVkSecondaryCommandBuffer on GrVkRenderTarget.
We need the wrapped GrVkSeocndaryCommandBuffer to live, holding refs to
GrVkResources until the GPU is done with the work. However, we don't know
ourselves when the command buffer gets submitted or when the GPU is done
since the client handles on that in the wrapped case. Our spec for wrapped
secondary command buffers requires to the client to keep the
GrSecondaryCommandBufferContext alive till the GPU is done the work so we
can use that to manage our needed lifetime as well. By putting the
GrVkSecondaryCommandBuffer on the GrVkRenderTarget, which is owned by the
SkGpuDevice in the above GrSCBContext, or lifetime should match what we need.

Change-Id: I7cdd92089bed390548ebf33f9d5c7e714bacc9c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256361
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-11-25 21:50:06 +00:00
Jim Van Verth
5fab90999f Revert "Rename GLRTFBOIDIs0 to WrapsSwapchainSurface and use for Metal."
This reverts commit b1edfde279.

Reason for revert: senorblanco@ is adding a WriteOnly flag which will
be more appropriate for this functionality.

Original change's description:
> Rename GLRTFBOIDIs0 to WrapsSwapchainSurface and use for Metal.
> 
> This provides a way to indicate that a Metal RenderTarget, and in
> particular a RenderTargetProxy, is framebufferOnly, so it can be
> restricted to certain operations.
> 
> Bug: skia:9573
> TBR: bsalomon@google.com
> Change-Id: I733fae2fce402c375534889346255afe28a57944
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255783
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Robert Phillips <robertphillips@google.com>

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

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

Bug: skia:9573
Change-Id: Ide775fbbe81114c10fe81e7faa517c20784e8498
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256496
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2019-11-25 21:49:46 +00:00
Michael Ludwig
8fa469d3bc Lift TextureSampler's proxy to SurfaceProxy
Now that the UniformHandlers can accept SurfaceProxies directly, there's
no need to have the restricted type on TextureSampler anymore. This will
make them one step closer to compatibility with GrSurfaceProxyView.

While making these changes, several effects performed their own source
coord normalization by peeking the texture. I updated these to just
use the proxy's backing store dimensions.

Bug: skia:9556
Change-Id: I97183e8453b7a3db86cd90d614c8c959b3707abb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255978
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-11-25 21:35:06 +00:00
Chris Dalton
d53853dd65 Reland "Reland "Enable msaa ccpr on vulkan""
This is a reland of 935a35d972

Original change's description:
> Reland "Enable msaa ccpr on vulkan"
>
> This is a reland of cb73b6250e
>
> Original change's description:
> > Enable msaa ccpr on vulkan
> >
> > TBR=egdaniel@google.com
> >
> > Bug: skia:9643
> > Change-Id: Ie06891734b700c940b996a63c7b1264ce0f2597c
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254808
> > Reviewed-by: Chris Dalton <csmartdalton@google.com>
> > Commit-Queue: Chris Dalton <csmartdalton@google.com>
> > Auto-Submit: Chris Dalton <csmartdalton@google.com>
>
> Bug: skia:9643
> Change-Id: I2537f03fad41ebddabbae94312b3836f7a948639
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255008
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

Bug: skia:9643
Bug: skia:9676
Change-Id: Ibade6deba89282f62af5fc835e1b775bce2bc5a5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256353
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2019-11-25 20:55:06 +00:00
Julia Lavrova
c028b42717 Ellipsis again
Change-Id: I895fd394dedc50acd648eeed4f398c375a9812ee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256224
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2019-11-25 19:57:15 +00:00
recipe-roller
9d940c3e7e 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/0ab6a9f6e41ac3e51f5a74325507a4cc5054cacb depot_tools: Use system's python for vpython. (ehmaldonado@chromium.org)
  https://crrev.com/9ea51a5b11451a5a78768cd7c3b71d71ff0037ee depot_tools: Run roll_dep tests on Python 3. (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I735553a89b282fcbeed840317eda2b3175acf38f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256354
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-11-25 19:31:46 +00:00
Florin Malita
0d603d8add [CanvasKit] Add SkResourceCache helpers
Allows clients to tune their image decode cache.

Change-Id: I121db096fe6c79a64aa1d388d3bae29f29dd2993
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256359
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2019-11-25 19:10:06 +00:00
Brian Osman
85bf9314c0 Extracted Skottie's resource provider to a separate module
This is a first pass that should help with migrating clients.
The utility implementations of ResourceProvider are still in
skottie - those are going to be harder to move. More likely
that I'll add parallel implementations in skresources, then
we can shift clients over and delete the skottie copy.

I'm planning to use this interface/system in particles.

Bug: skia:9513
Change-Id: I004da685983c05cb1b48a75f8a23bd7d73a3f5af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256077
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2019-11-25 18:58:26 +00:00
Herb Derby
4a327bcb10 Fix chrome build bots
Change-Id: I5f402e7998f52fa151f195ec10f8cfdeffb30fe5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256234
Commit-Queue: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2019-11-25 17:39:06 +00:00
Herb Derby
06a620868e Structured binding for SkZip and SkEnumerate
Change-Id: I619d45fc270b6405f687096df2d333fe5e5ecb53
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/254276
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2019-11-25 17:07:46 +00:00
Herb Derby
1b8dcd112c Simplify SubRun structure in GrTextBlob
* Remove Run.
* Have SubRun handle both mask and path data.
* Collect up runs of glyph with the same format to
  simplify building SubRuns.

The nexus of this change is GrTextBlob::makeSubRun. All the
invariants for a SubRun are set in this code, and those
invariants stem from the SubRunType. Much of the code has been
simplified by not having to maintain complicated invariant
state between adding glyphs.

The change that reduces the most number of problems with the
old code is having SubRun own its SkStrikeSpec. Having bulk
glyph insertion facilitated this.

Change-Id: I2439392a9ee3485e7b07a1f3fdaf1351128c4d47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255309
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2019-11-25 16:51:46 +00:00
Ben Wagner
61169e9c47 Fix asset_utils when no service_account_json
Change-Id: I0524c96e3a6ab1a342872d5d0d903e87526dffeb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256230
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2019-11-25 16:17:46 +00:00
Brian Salomon
fc118442f6 Reland "Revert "Revert "Make FP optimizations helpers use SkAlphaType not GrColorType"""
This is a reland of 997b37fdb9

Layout tests have been suppressed.

Original change's description:
> Revert "Revert "Make FP optimizations helpers use SkAlphaType not GrColorType""
>
> This reverts commit 078e8faa26.
>
> Change-Id: I67b2970584db5a1afbf9928b77c5444947ef71a3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255897
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Change-Id: I6db4cff8b71ef1f29ac47f7729b9514d009f730a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256225
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-25 15:46:35 +00:00
Robert Phillips
2f05a48583 Add code path that avoids large indexBuffer draws
The bulkrect_1000_random_uniqueimages_batch on a Nexus 6P/Adreno 430

w/o this CL
curr/maxrss	loops	min	median	mean	max	stddev	samples   	config
 304/304 MB	1	151ms	159ms	158ms	163ms	3%	▆█▇▄▆▆▁▂█▅	gles

w/ this CL
curr/maxrss	loops	min	median	mean	max	stddev	samples   	config
 286/286 MB	1	18.1ms	18.1ms	18.1ms	18.1ms	0%	▂▄▅▃▅▅▃▄▁█	gles

Change-Id: I0f6d690b953444ec7a3176cb27c8a253caa55f5d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255986
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-25 15:31:35 +00:00
Florin Malita
be7e7ddcb6 [sksg] Temporarily inline Path fillType accessors
(to facilitate SkPathFillType conversion)

Change-Id: I713cab5e4ecef51a251692bc745994ab0e71c43d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256219
Auto-Submit: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-11-25 15:02:06 +00:00
skia-autoroll
d07418c457 Roll skia/third_party/skcms 68d3f3a95f1b..ef3043bd8110 (1 commits)
https://skia.googlesource.com/skcms.git/+log/68d3f3a95f1b..ef3043bd8110

git log 68d3f3a95f1b..ef3043bd8110 --date=short --no-merges --format='%ad %ae %s'
2019-11-25 brianosman@google.com Run up to 8 iterations of Gauss-Newton, choose the best error

Created with:
  gclient setdep -r skia/third_party/skcms@ef3043bd8110

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC bungeman@google.com,mtklein@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

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

Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Bug: None
Change-Id: I0c14b4bdd3601848a2a2c6a9f9c8ec3bacf8f068
Tbr: bungeman@google.com,mtklein@google.com
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256329
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-25 14:52:45 +00:00
Michael Ludwig
fcdd0612f3 Use just GrSurfaceProxy in pipeline management.
Replaces VisitSurfaceProxyFunc with GrOp::VisitProxyFunc since they are
now the same.

Records sampled textures as GrSurfaceProxies, but asserts they are in fact
texturable. Updates all backends to process the pipelines with surface
proxies (which always have had to do a surface->asTexture() virtual call
that is unchanged, this just avoids the unnecessary proxy virtual).

Also updates the GrTextureOp to not call asTextureProxy() anymore, to
take advantage of the relaxed pipeline types.

A number of instances of asTextureProxy() remain. It is still the primary
method of determining if a proxy is texturable, so code paths that branch
on that still use it. Some resource management code still requires mipmap
functionality specific to the GrTextureProxy API, so they still use it.

To keep this CL sane, the GrFP::TextureSampler and all generated FPs have
not been updated to use GrSurfaceProxy, although that will be in a follow
up since it should be technically possible.

Bug: skia:9556
Change-Id: I1e917aff9e70b08915e98ccc17c6b8f3be29c4f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255830
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2019-11-25 14:00:45 +00:00
Michael Ludwig
64025cab89 Lock down GrQuad ctors, avoid resetting Ws when known to be 1.0
Change-Id: I2df94791af133fcfb3fa491163394369f324bbc3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256096
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2019-11-25 13:49:15 +00:00
Florin Malita
dd5ba942eb [skottie] Use seekFrame in skottie2movie
Produces more precise frame synchronization.

Change-Id: Ie9cd85cfbcab9eca827126feae48bb6836795983
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256217
Auto-Submit: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
2019-11-25 13:35:45 +00:00
skia-autoroll
9c0c92b2db Roll third_party/externals/angle2 4c7db77e0185..e9b68f332a30 (5 commits)
4c7db77e01..e9b68f332a

git log 4c7db77e0185..e9b68f332a30 --date=short --no-merges --format='%ad %ae %s'
2019-11-23 emircan@chromium.org Clean unused NewCreateImagePipeCmd
2019-11-22 cnorthrop@google.com Enable frame capture on Android
2019-11-22 jmadill@chromium.org Posix: Fix async LaunchProcess.
2019-11-22 shrekshao@google.com EXT_texture_norm16 readpixels fix
2019-11-22 courtneygo@google.com Suppress flaky failure with Win7/NVIDIA/D3D11

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bungeman@google.com
Change-Id: I3717a0fe9f300e724ab4cbfb5e3c5b85888fd239
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256297
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-25 06:20:15 +00:00
skia-autoroll
d8bfc51614 Roll ../src 137e8082047a..0ec8ef3c9f4f (1040 commits)
137e808204..0ec8ef3c9f


Created with:
  gclient setdep -r ../src@0ec8ef3c9f

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/chromium-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Bug: None
Tbr: bungeman@google.com
Change-Id: Ie543077f67d36139804020cc5c5684cf0a83dea8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256298
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-25 04:40:04 +00:00
skia-autoroll
61ad456558 Roll third_party/externals/swiftshader c8d4d4254ca1..d44d61514749 (4 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c8d4d4254ca1..d44d61514749

git log c8d4d4254ca1..d44d61514749 --date=short --no-merges --format='%ad %ae %s'
2019-11-25 bclayton@google.com Fix chrome build: Use spaces (not tabs) in .gn files
2019-11-22 chrisforbes@google.com Fix vkGetDescriptorSetLayoutSupport implementation
2019-11-22 srisser@google.com Log unsupported extensions used in pNext structs
2019-11-22 sugoi@google.com Handle new device extension properties

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

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-skia-autoroll
Please CC bungeman@google.com on the revert to ensure that a human
is aware of the problem.

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

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

Cq-Include-Trybots: skia/skia.primary:Test-Debian9-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bungeman@google.com
Change-Id: I1286b5a0bc66a1836901449d339450dec53f7f52
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256296
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2019-11-25 04:33:34 +00:00
Ben Wagner
6c4c685b2b Remove Debian9 GCC jobs and related code
Also update some recipe expectations to use job names that currently
exist.

Bug: skia:9632
Change-Id: I35883474a91ffb9fb2ab3b16089c7c80b5df0bd6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255982
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2019-11-24 23:51:04 +00:00
Robert Phillips
50299de399 Reland "Revert "Make FP optimizations helpers use SkAlphaType not GrColorType""
This reverts commit 997b37fdb9.

Reason for revert: May be blocking Chrome roll

Original change's description:
> Revert "Revert "Make FP optimizations helpers use SkAlphaType not GrColorType""
> 
> This reverts commit 078e8faa26.
> 
> Change-Id: I67b2970584db5a1afbf9928b77c5444947ef71a3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255897
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

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

Change-Id: I0d2754ac7f4672f0758e4d00cd9e06998637846a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256196
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2019-11-23 15:21:08 +00:00
recipe-roller
c3ff97a98b 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/800129711d28549962e99dfa08007d9d79e4f7a3 my_activity: allow to exclude some servers (vbendeb@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1dea6be6ecef10b0e07603faa38e8edb31873005
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256104
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-11-23 03:03:05 +00:00
recipe-roller
a687c482ae 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/dcbdf913dcecac13e14af5928a070f369b729c60 [swarming] Don't use null user/tags in test data (olivernewman@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I60f962f5c8ae19e52ee8e4aa9f582ad525a433e6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256103
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-11-23 02:00:44 +00:00
Brian Salomon
997b37fdb9 Revert "Revert "Make FP optimizations helpers use SkAlphaType not GrColorType""
This reverts commit 078e8faa26.

Change-Id: I67b2970584db5a1afbf9928b77c5444947ef71a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255897
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2019-11-23 00:51:03 +00:00
recipe-roller
47af12aa83 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/fb9043505a8386e9ea7b9ff12bad0aeaaf41d929 [recipes-py] Provide the ability to supply reason when cancel a build (yiwzhang@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iebaa1fbda6377589db5f174e92a3a6ff0f92c203
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/256122
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-11-22 22:39:58 +00:00
Brian Salomon
e21af50dc6 Test texture domain effect with local matrix.
Add a common way to make rect op for testing that uses a GP with a local
matrix.

Change-Id: I958d1230bd5067b2e4b60fcd374e2f7718681e43
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/255782
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2019-11-22 22:37:33 +00:00