Commit Graph

45924 Commits

Author SHA1 Message Date
Greg Daniel
8ec605e353 Add debug gpu abandon bots and fix yuv crash.
Change-Id: I0199aee1c164a0671c364300f9ce86bb4f7dd9ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263027
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2020-01-08 16:57:22 +00:00
Hal Canary
ea2d2bbb06 Reland "GrGLMakeNativeInterface_{iOS,mac,win}: clean up"
This reverts commit 565fb9d1a6.

Original change's description:
> Revert "GrGLMakeNativeInterface_{iOS,mac,win}: clean up"
>
> This reverts commit a423802d40.
>
> Reason for revert: Mac test/perf failures
>
> Original change's description:
> > GrGLMakeNativeInterface_{iOS,mac,win}: clean up
> >
> > Change-Id: Ie4aad36164352dcb4ae364b3cfbabfc5f1493447
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261538
> > Commit-Queue: Brian Osman <brianosman@google.com>
> > Auto-Submit: Hal Canary <halcanary@google.com>
> > Reviewed-by: Brian Osman <brianosman@google.com>
>
> TBR=halcanary@google.com,brianosman@google.com
>
> Change-Id: I129c9861ee0d0d196ad9545c7edc71a0f0824ad5
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261553
> Reviewed-by: Florin Malita <fmalita@google.com>
> Commit-Queue: Florin Malita <fmalita@google.com>

Cq-Include-Trybots: skia/skia.primary:Build-Mac-Clang-x86_64-Release-Metal
Cq-Include-Trybots: skia/skia.primary:Build-Mac-Clang-x86_64-Debug-Metal
Cq-Include-Trybots: skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-Metal
Cq-Include-Trybots: skia/skia.primary:Test-Mac10.13-Clang-MacBook10.1-GPU-IntelHD615-x86_64-Debug-All-Metal
Change-Id: Ib777d4746bacc1b53c21837c86ce1f411f3d2f3b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262803
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2020-01-08 16:55:43 +00:00
Mike Klein
7cfcc1e86a add Brian's fiddle as gm/bicubic
Change-Id: I748ab57274c360261e957d43a08366e62350110b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263056
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-08 16:40:53 +00:00
Mike Reed
403c807971 Revert "Revert "Extend SkCanvas matrix stack to be 4x4, but with (basically) the same public API.""
The reason for the assert was breaking an assert, that if the CTM was scale/translate, that after
a preTranslate, it should still be that.

This is true... unless the new translate values are non-finite. In that case, we might turn a zero
into a NaN, (0 * non_finite --> nan), so we either have to require finite args (which we don't
at the moment) or we can't make this assert. This re-land removes that assert.

This reverts commit 268ed57d71.

Change-Id: I3c48a0aa17649351a246c1fbab5449f2d59aaf84
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263023
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Reed <reed@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-01-08 16:13:51 +00:00
Michael Ludwig
dff4c1d5fd Revert "Avoid loop-dependent behavior in GrMemoryPoolBench"
This reverts commit f811fc331a.

Reason for revert: breaks on iOS

Original change's description:
> Avoid loop-dependent behavior in GrMemoryPoolBench
> 
> This helps stability of benchmark across repeated runs, and across code
> changes. Previously, a change to the tuned loop count could radically
> change the allocation behavior within the loop's iteration and lead to
> unfair comparisons.
> 
> In addition, this separates the stack allocation pattern into N allocations
> followed by N LIFO releases, and a push-pop alternating pattern of N
> allocates and releases (so still LIFO, but reuses the memory at the start
> of a block).
> 
> In later CLs experimenting on the memory pool, I found that there were
> surprising effects on performance linked to the specific interaction between
> the allocation size, per-allocation metadata, and per-block metadata. To
> help differentiate these coincidences, this adds two modes of allocation
> where one should already be aligned.
> 
> It also moves away from a global pool, so that it's possible to benchmark
> on different block sizes and factor in the allocation/release cost of the
> actual blocks (vs. the cursor management of a larger sized pool). As part
> of this, the new/delete reference operator is added as an explicit benchmark.
> 
> Change-Id: I12b8c11cb75db0df70460fe2e8cf6c029db7eb22
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262936
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: I16f2810699a378eb5a516ab9fb1834c10b65f01b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263029
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2020-01-08 15:54:21 +00:00
Michael Ludwig
f811fc331a Avoid loop-dependent behavior in GrMemoryPoolBench
This helps stability of benchmark across repeated runs, and across code
changes. Previously, a change to the tuned loop count could radically
change the allocation behavior within the loop's iteration and lead to
unfair comparisons.

In addition, this separates the stack allocation pattern into N allocations
followed by N LIFO releases, and a push-pop alternating pattern of N
allocates and releases (so still LIFO, but reuses the memory at the start
of a block).

In later CLs experimenting on the memory pool, I found that there were
surprising effects on performance linked to the specific interaction between
the allocation size, per-allocation metadata, and per-block metadata. To
help differentiate these coincidences, this adds two modes of allocation
where one should already be aligned.

It also moves away from a global pool, so that it's possible to benchmark
on different block sizes and factor in the allocation/release cost of the
actual blocks (vs. the cursor management of a larger sized pool). As part
of this, the new/delete reference operator is added as an explicit benchmark.

Change-Id: I12b8c11cb75db0df70460fe2e8cf6c029db7eb22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262936
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-08 15:24:11 +00:00
Eric Boren
fa424b2e6a [infra] Fix build_task_drivers.sh, update infra dep
build_task_drivers was always syncing infra to tip-of-tree. Fix it to
use the pinned revision.

Change-Id: Iea6c54e4f62f30e986880d50b38ee0fb612a7a83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262217
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2020-01-08 14:53:41 +00:00
Brian Osman
268ed57d71 Revert "Extend SkCanvas matrix stack to be 4x4, but with (basically) the same public API."
This reverts commit 98bfcc7ff3.

Reason for revert: Flutter hitting assert:
../../third_party/skia/src/core/SkCanvas.cpp:1432: fatal error: "assert(fIsScaleTranslate == fMCRec->fMatrix.isScaleTranslate())"

Original change's description:
> Extend SkCanvas matrix stack to be 4x4, but with (basically) the same public API.
> 
> Devices receive the 4x4, but by default they simply downsample it to SkMatrix.
> 
> New SkM44 matrix for the impl. It differs from SkMatrix44 in a few ways
> - no tracking of "type"
> - faster for concat, as it does not use doubles for intermediates
> - much simpler API
> 
> There are some low-bit differences in some gms, so adding a flag for clients to
> stage this change. (due to faster but lower-precision in SkM44::concat)
> 
> Performance: running canvas_matrix bench
> 
> 3x3 version:
> 
>     167.93  	canvas_matrix_3x3	8888
>     209.97  	canvas_matrix_2x3	8888
>     174.87  	canvas_matrix_scale	8888
>     135.30  	canvas_matrix_trans	8888
> 
> 4x4 version:
> 
>     116.59  	canvas_matrix_3x3	8888
>     105.40  	canvas_matrix_2x3	8888
>     159.83 ?	canvas_matrix_scale	8888
>     113.47  	canvas_matrix_trans	8888
> 
> Why faster?
> - not tracking matrix_type helps a lot it seems
> - faster full concat (no doubles)
> 
> Before adding the specialized preConcats...
> 
>     318.11 ?	canvas_matrix_3x3	8888
>     339.38  	canvas_matrix_2x3	8888
>     383.28  	canvas_matrix_scale	8888
>     251.67  	canvas_matrix_trans	8888
> 
> Change-Id: I68eac942919fa5418081e789f31710a1e2a752da
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262056
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Florin Malita <fmalita@chromium.org>
> Commit-Queue: Mike Reed <reed@google.com>

TBR=mtklein@google.com,bsalomon@google.com,herb@google.com,fmalita@chromium.org,fmalita@google.com,reed@google.com,michaelludwig@google.com

Change-Id: I28c3d69c19ba44ab65ca7c059221b64c7dffef22
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263021
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-08 14:28:11 +00:00
Jim Van Verth
a4f207eb67 Revert "Move makeDeferredRenderTargetContext calls to factory on RTC."
This reverts commit 1c16b43033.

Reason for revert: Red on tree
Original change's description:
> Move makeDeferredRenderTargetContext calls to factory on RTC.
> 
> Change-Id: Iaa8f5829d9f8650ff27a60f75fb2216f016ab85e
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262058
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Reviewed-by: Brian Salomon <bsalomon@google.com>

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

Change-Id: I9e3c9d13c66b5437c87ad7136d283fa4ac81df1f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263019
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2020-01-08 13:31:21 +00:00
Eric Boren
039afd96fd [recipes] Remove unnecessary depot_tools dependency in flavor module
Change-Id: Ic1f3896a450bd81bb8c4859d3998c9873af821f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263016
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2020-01-08 12:46:21 +00:00
skia-autoroll
37e606255e Roll ../src 55a27186b7de..61f03e9a10c0 (434 commits)
55a27186b7..61f03e9a10


Created with:
  gclient setdep -r ../src@61f03e9a10

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 jvanverth@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: jvanverth@google.com
Change-Id: Id623af4271c1522c0ab7ef475d89b0b7f1b4149f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262985
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-08 04:44:46 +00:00
skia-autoroll
b3eacd18df Roll third_party/externals/angle2 51e653f03f26..db49bc7dd075 (8 commits)
51e653f03f..db49bc7dd0

git log 51e653f03f26..db49bc7dd075 --date=short --first-parent --format='%ad %ae %s'
2020-01-07 tobine@google.com Vulkan:Roll volk
2020-01-07 ianelliott@google.com Vulkan: Update number of samples when changing draw framebuffer
2020-01-07 tobine@google.com Vulkan:Enable DebugUtils extension for Android
2020-01-07 cwallez@chromium.org Suppress VertexAttributeTest.DrawArraysWithBufferOffset on Mac NVIDIA
2020-01-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 10a900e5ffaf..068dd89cab31 (7 commits)
2020-01-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 6334d594f68c..1d258ac34698 (3 commits)
2020-01-07 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-validation-layers/src 2be3fe0f8471..b416ed86e4b2 (1 commits)
2020-01-07 syoussefi@chromium.org Vulkan: Reorder descriptor sets

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

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 jvanverth@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: jvanverth@google.com
Change-Id: Iab5f7d094cf8528e32e45cd7d6978c65641a18c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262983
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-08 04:38:27 +00:00
skia-autoroll
f2ceb999b3 Roll third_party/externals/swiftshader 068dd89cab31..45a4d0f36bd6 (5 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/068dd89cab31..45a4d0f36bd6

git log 068dd89cab31..45a4d0f36bd6 --date=short --first-parent --format='%ad %ae %s'
2020-01-08 capn@google.com Disable unused function warning
2020-01-07 bclayton@google.com Regres: Apply fix for invalid SPIR-V in 12 tests.
2020-01-07 capn@google.com Disable LLVM & Subzero stack traces and crash handling
2020-01-07 digit@google.com vulkan: use a marl::Event in the VkSemaphore implementation.
2020-01-07 digit@google.com [vulkan] Simplify vk::Semaphore implementation.

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

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 jvanverth@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: jvanverth@google.com
Change-Id: Ic41e2565cebaa92bb32e573ba193bd528fa71789
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262984
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-08 04:35:46 +00:00
Herb Derby
bc131b8779 Seperate out quad updating from atlas updating
Change-Id: I5a4bfe0b728c23df76dd7de7d57ee06e42e5641b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262939
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-01-07 22:44:53 +00:00
Herb Derby
586f8d04d4 regenTextureCoordinates is always true when calling doRegen
* Rename doRegen -> updateTextureCoordinatesMaybeStrike
* Collapse all regenTextureCoordinates if statements

Change-Id: I0afba60c657f9b805b07247673d9f24c265b9a0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262937
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2020-01-07 22:36:53 +00:00
recipe-roller
d7b630abe0 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/1cbfca1cec9aedcd01cfe190a1569d2f42c8912b Update the attrs dependency to the current version. (gbeaty@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Iae81101d61b42c621e7bb3f817c4b13f121aa10b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262958
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>
2020-01-07 22:08:43 +00:00
Ben Wagner
943f9c632c Reland "Fixes for Vulkan Debug layers"
This reverts commit f01813ec5f.

Reason for revert: enabling for Debug only

Original change's description:
> Revert "Fixes for Vulkan Debug layers"
>
> This reverts commit 45ce9c7a2b.
>
> Reason for revert: causes bad perf results
>
> Original change's description:
> > Fixes for Vulkan Debug layers
> >
> > Followup to https://skia-review.googlesource.com/c/skia/+/187921. Fixes
> > the path to the layers for the updated SDK.
> >
> > Change-Id: I329b99be25bb23931963b711887da59a84bbf792
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262064
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,benjaminwagner@google.com
>
> Change-Id: I00241e8d3f03d98fcbba542bc429ebf6fd338e39
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262934
> Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
> Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>

Change-Id: I87ec2d21ed7ebc6af2616471d3b414d4b759954a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262935
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-01-07 22:08:23 +00:00
Mike Klein
c89c1993e3 bicubic in skvm image shader
Change-Id: Ie7f926969466aeaaca46ba2ee7645dec2ce38696
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262891
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 21:56:23 +00:00
Greg Daniel
1c16b43033 Move makeDeferredRenderTargetContext calls to factory on RTC.
Change-Id: Iaa8f5829d9f8650ff27a60f75fb2216f016ab85e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262058
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-07 21:14:13 +00:00
Herb Derby
511124e5a8 Simplify the atlas update inner loop
Try to move calculations out of the main atlas update loop.

Simplify expressions involving the result values. Invert the if-statement
and for-loop to do even less work.

Change-Id: Ibef88e65fb5bb8eeeaec13f0ae0ba1acb4d2d87d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262926
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2020-01-07 20:32:12 +00:00
Ben Wagner aka dogben
f01813ec5f Revert "Fixes for Vulkan Debug layers"
This reverts commit 45ce9c7a2b.

Reason for revert: causes bad perf results

Original change's description:
> Fixes for Vulkan Debug layers
> 
> Followup to https://skia-review.googlesource.com/c/skia/+/187921. Fixes
> the path to the layers for the updated SDK.
> 
> Change-Id: I329b99be25bb23931963b711887da59a84bbf792
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262064
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

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

Change-Id: I00241e8d3f03d98fcbba542bc429ebf6fd338e39
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262934
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-01-07 20:29:22 +00:00
Chris Dalton
b832ce61ee Add a path renderer that uses GPU tessellation
Implements a simple first pass for a path renderer that uses the
classic Red Book "stencil then cover" method, and linearizes curves
with GPU tessellation shaders.

The new path renderer is disabled by default, and can only be enabled
in the viewer UI or by passing the "--pr gtess" flag.

Change-Id: Ic9354952e93c8b108577961760b4f0daa82d35aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261715
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2020-01-07 20:00:22 +00:00
Ben Wagner
496a206ede Update remote access documentation for Win2019
No-Try: true
Docs-Preview: https://skia.org/?cl=262387
Change-Id: Ifc74fbb44a17336e335af70294b50eeeb4404a57
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262387
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2020-01-07 18:55:57 +00:00
Mike Klein
17edb8df09 tolerate alpha slightly out of [0,1]
It's interesting but perhaps not consequential that bilerp can produce
alpha just greater than 1.0f.  I think this setup of what clamps what
where mirrors the GPU backend more closely.  No pixel diffs.

The p3 GM would draw a little differently if we only min(rgb, alpha),
and that would make it inconsistent with the GPU backend, so I've kept
it as clamp(rgb, 0, alpha).

Change-Id: I5cfacb9aae56c33b542cbc4e5e740b4d24c6b9e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262812
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2020-01-07 18:53:02 +00:00
Brian Osman
49f7a49973 In SkRuntimeEffect, guard against programs not compiling with GPU caps
It's possible for SkSL to get past the initial compile (with generic
Settings), then fail to compile once we install the device's caps.

Change-Id: I082edae13659f3ed6501e87eee67eb3b9cd03303
Bug: chromium:1039366
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262386
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-01-07 18:50:52 +00:00
Nathaniel Nifong
b5d7f7eac0 Fix typo where width/height were swapped in new debug layer manager
Bug: skia:9748
Change-Id: Ibb716e843b4e7068b3bf9b382086ce823755cb82
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262381
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2020-01-07 18:47:57 +00:00
Brian Salomon
b8f098d372 Reland "Rename GrSimpleTextureEffect->GrTextureEffect"
This reverts commit d7436a37ff.

Restores old file order in gpu.gni until Mac/Metal issue can be
debugged.

Change-Id: I6e2ee3bdc3b39270aeaaf28b9613e4ac49d38e1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262801
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2020-01-07 18:44:42 +00:00
Mike Klein
3f83bfd21c one option for fixing bilerp asserts
One option for fixing bilerp asserts is just to commit to clamping its
output.  Will write up another option that I think mirrors the GPU
backend more closely as a patch on top of this CL.

Few minor things here too:
   - Use clamp() more now that we have it.
   - Update assert_true() calls to print out the interesting value
     instead of the condition.
   - Clamp alpha before rgb for clarity in the case we're clamping rgb
     to that clamped alpha.  Either order actually works, but this order
     is more obviously correct.

Change-Id: I8f05834fd862ba8bb45b961e01563af091232c95
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262811
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 18:42:53 +00:00
Mike Klein
b5c435579e upgrade debugging tools
- Add instruction numbers to program dumps.
- Dump the program when an assertion fails,
  and print the failing condition or an optional
  other value (e.g. if alpha outside [0,1], print alpha).

With all that and the new commented assert enabled, I'm seeing that
sometimes we get a bilerp alpha of 0x3f800001, just a little more than
1.0f.  Fix still tbd.

Change-Id: I2c20e41ae370d8cd2963e2dbf0fd91aa0fd50061
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262808
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 18:26:22 +00:00
Mike Reed
98bfcc7ff3 Extend SkCanvas matrix stack to be 4x4, but with (basically) the same public API.
Devices receive the 4x4, but by default they simply downsample it to SkMatrix.

New SkM44 matrix for the impl. It differs from SkMatrix44 in a few ways
- no tracking of "type"
- faster for concat, as it does not use doubles for intermediates
- much simpler API

There are some low-bit differences in some gms, so adding a flag for clients to
stage this change. (due to faster but lower-precision in SkM44::concat)

Performance: running canvas_matrix bench

3x3 version:

    167.93  	canvas_matrix_3x3	8888
    209.97  	canvas_matrix_2x3	8888
    174.87  	canvas_matrix_scale	8888
    135.30  	canvas_matrix_trans	8888

4x4 version:

    116.59  	canvas_matrix_3x3	8888
    105.40  	canvas_matrix_2x3	8888
    159.83 ?	canvas_matrix_scale	8888
    113.47  	canvas_matrix_trans	8888

Why faster?
- not tracking matrix_type helps a lot it seems
- faster full concat (no doubles)

Before adding the specialized preConcats...

    318.11 ?	canvas_matrix_3x3	8888
    339.38  	canvas_matrix_2x3	8888
    383.28  	canvas_matrix_scale	8888
    251.67  	canvas_matrix_trans	8888

Change-Id: I68eac942919fa5418081e789f31710a1e2a752da
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262056
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2020-01-07 18:23:04 +00:00
Hal Canary
76cc2c5507 public.bzl: add SKOTTIE_IOS_LIB_SDK_FRAMEWORKS
Motivation: this will let me add dependencies without breaking clients.

Change-Id: I70b71c08b0a902b2b7e6fc160c63dc3afdeb7de5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262806
Commit-Queue: Hal Canary <halcanary@google.com>
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner aka dogben <benjaminwagner@google.com>
2020-01-07 18:19:22 +00:00
Robert Phillips
d0201d9115 Improve debug information provided when backend format and GrColorType don't match
Bug: 1037949
Change-Id: Iabc380647acf006f2035c5cedff8391cc87b7def
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262805
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2020-01-07 17:58:12 +00:00
Ben Wagner
45ce9c7a2b Fixes for Vulkan Debug layers
Followup to https://skia-review.googlesource.com/c/skia/+/187921. Fixes
the path to the layers for the updated SDK.

Change-Id: I329b99be25bb23931963b711887da59a84bbf792
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262064
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2020-01-07 17:47:52 +00:00
Mike Klein
8e71744169 add SkVM_fwd.h
Tweaking SkVM.h requires ~550 build steps because SkShaderBase.h
includes it.  By switching that to forward declarations of the types
using SkVM_fwd.h, it's down to ~15.  Big deal for laptop productivity.

Change-Id: Ide5cc776b8a0c6fa6473cf5f43acabdf566e8808
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262860
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-07 17:06:51 +00:00
Mike Klein
b1ff79aae8 handle kLow/kMedium in skvm image shader
- Add fract(), clamp().
- Refactor sampling to support bilerp and bicubic,
  with bicubic left as an easy follow up.

I _think_ this is failing asserts that we left alpha in [0,1].  For now
I've opted bilerp into the same clamp that bicubic will need eventually.
Will follow up to remove bilerp clamp... we shouldn't need that to my
knowledge.  On the other hand, this is the first time we ever check.

Cq-Inlcude-Trybots: skia.primary:Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Debug-All-SK_USE_SKVM_BLITTER
Change-Id: I74e3e3c5fb5cda200f704f1e84ac1d01653b2f09
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262782
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-07 15:59:41 +00:00
Ben Wagner
2df621e68d Add NativeFonts job for Mac 10.15 CPU
Change-Id: Icf81d2fd50e060e9e9ca2876f5ed7192d0d18d7a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/258885
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2020-01-07 15:17:20 +00:00
Brian Salomon
d7436a37ff Revert "Rename GrSimpleTextureEffect->GrTextureEffect"
This reverts commit 90673ec665.

Reason for revert: Causes metal bot failures

Original change's description:
> Rename GrSimpleTextureEffect->GrTextureEffect
>
> It will become less simple.
>
> Change-Id: I409d0faba386597ae05738273d5ff773501eb358
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262383
> Auto-Submit: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

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

Change-Id: Id25c9cde3c2048149409745f163e42c588de70c1
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262514
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2020-01-07 15:07:09 +00:00
Mike Klein
91e0d75269 rm gm/skvm.cpp
It's not that useful now that we're drawing real stuff,
and kind of annoying to keep updating its Fade shader.

Change-Id: Ie8252b9a189bd38b150647e4a93b66b765c7ef97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262536
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-07 13:34:49 +00:00
Mike Klein
3ab7128dfa thread an SkArenaAlloc into shaders
We'll need something like this to extend the lifetime of our
SkBitmapController::State (and the bitmap and mipmaps it holds)
to match the lifetime of the blitter.  This is particularly
important particularly for kMedium where we're not sampling off
the original image.

Not sure which other effects will need this sort of thing, if any.
I think gradients would just write the colors directly into uniforms.

Change-Id: Idefe620f88113ed436e04a101195b27aec1230db
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262522
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 13:28:10 +00:00
skia-autoroll
c21316a73b Roll third_party/externals/angle2 1031d2c65b5e..51e653f03f26 (10 commits)
1031d2c65b..51e653f03f

git log 1031d2c65b5e..51e653f03f26 --date=short --first-parent --format='%ad %ae %s'
2020-01-07 shrekshao@google.com Suppress flaky failure with MacOS/NVIDIA/OPENGL
2020-01-07 j.vigil@samsung.com EGL: Implement EGL_ANDROID_framebuffer_target
2020-01-06 courtneygo@google.com Vulkan: Update dEQP source for test fixes
2020-01-06 syoussefi@chromium.org Vulkan: No line raster emulation code if extension
2020-01-06 syoussefi@chromium.org GL: Enable EXT_gpu_shader5
2020-01-06 flibitijibibo@gmail.com Fix UWP build
2020-01-06 ericbinet@google.com Add missing steps in DevSetup
2020-01-06 flibitijibibo@gmail.com Fix GGP build
2020-01-06 lehoangq@gmail.com Metal: fix vertex attribute's conversion lost after changing buffer binding.
2020-01-06 j.vigil@samsung.com update date comments to 2020

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

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 jvanverth@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: jvanverth@google.com
Change-Id: Ia2fc172bacb133d1be1e0152d89ed7a660ea762c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262547
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:44:09 +00:00
skia-autoroll
4e78c8c8a0 Roll third_party/externals/swiftshader 10a900e5ffaf..068dd89cab31 (7 commits)
https://swiftshader.googlesource.com/SwiftShader.git/+log/10a900e5ffaf..068dd89cab31

git log 10a900e5ffaf..068dd89cab31 --date=short --first-parent --format='%ad %ae %s'
2020-01-06 bclayton@google.com SPIRV-Tools: Update Android.bp to fix build.
2020-01-06 capn@google.com Limit Vulkan memory allocation size to 1 GiB
2020-01-06 bclayton@google.com IDs: Move inline impls below class.
2020-01-06 bclayton@google.com Pipeline: Store builtins on SpirvRoutine...
2020-01-06 bclayton@google.com Style: clang-format the tests source too
2020-01-06 bclayton@google.com Merge changes Id1120acb,Ifc6afcda,I8b5da04a,I9389ad9e,I35d60f68
2020-01-06 sugoi@google.com Improve 1010102 blend precision

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

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 jvanverth@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: jvanverth@google.com
Change-Id: I41f5ab437b07b361f2801c346eb3e53b0bcf7316
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262546
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:39:49 +00:00
skia-autoroll
da1faeb004 Roll ../src 3beaf136b459..55a27186b7de (337 commits)
3beaf136b4..55a27186b7


Created with:
  gclient setdep -r ../src@55a27186b7

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 jvanverth@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: jvanverth@google.com
Change-Id: If5691876c2deed214593b9537da9758069e40e22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262545
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2020-01-07 04:35:19 +00:00
recipe-roller
c1e1fbbe13 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/1961043388e63c48946322de077bebbb333fde6a Revert "Move httplib2 import above third_party." (ehmaldonado@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic45454ce1e53fc3c8234b2f76d54b64cc0b3877f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262511
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>
2020-01-07 04:10:49 +00:00
recipe-roller
807bdcef66 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/fa40bfa39bf0399570558e24bd3f8680a8130ac2 Update "git cl format --python" to default to PEP-8 (agrieve@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I323c66981e556d17a739253c8b496fd27f3fd76c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262509
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>
2020-01-07 03:01:47 +00:00
recipe-roller
4e2becf84d 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/cd1331ea69ccdfcecc6ab07eee8ffaf21824a7c6 Move httplib2 import above third_party. (morchard@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ib6de529a7cbae8430c38322032271b71b649063d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262506
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>
2020-01-07 02:27:07 +00:00
Mike Klein
4bc86d590e handle unpremul in skvm blitter
- Centralize unpremul() and premul().
- Handle unpremul surfaces.
- Handle unpremul images.

Change-Id: I99967c66f73fefe5940bb17d1ecc3e6d85559cf8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262504
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-07 01:56:07 +00:00
recipe-roller
d9ecf8bb93 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/d0de3a7be93f5bba16bc9bcca9823668e0d91d35 Revert "depot_tools: Remove third_party/httplib2." (dnfield@google.com)
recipe_engine:
  https://crrev.com/bf4885534ce2e5214c7ef1a015296d79bfab6b7b [resultdb] Log output (nodir@chromium.org)
  https://crrev.com/f46d187695175b7a4cd0a76ef58b364890499f2d Minor clean-up of docs (garymm@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I2652cc4af9d37bd164590988e375455cd246bdf2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262502
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>
2020-01-07 01:41:37 +00:00
Ben Wagner
8969a1641b Add missing Metal jobs
Change-Id: If571718c1f159762bf87ab41066a691505c30504
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/261186
Commit-Queue: Ben Wagner aka dogben <benjaminwagner@google.com>
Auto-Submit: Ben Wagner aka dogben <benjaminwagner@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2020-01-06 23:19:07 +00:00
Mike Klein
d67a5c3090 support kDecal in skvm image shader
This turns out to be way easier than the SkRP version.
Kinda just does what you'd hope.

Change-Id: I71e404b989f8420a20b0e6c7f11fd29bb7f49f5b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262456
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2020-01-06 22:43:38 +00:00
Mike Klein
25480bf350 expand skvm image shader
- Specialize on typical matrix types.
- Expand image formats to match what SkVMBlitter can draw to.
- Add floor() and abs(), and use them for repeat and mirror.

Change-Id: Ieab539681f5f9fddf1617bb72405ed54fa42de4d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/262439
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2020-01-06 22:19:17 +00:00