Commit Graph

55625 Commits

Author SHA1 Message Date
John Stiles
87960de2ae Migrate GrDstProxyView to its own header.
Change-Id: Ic1b362a38d60c50ee6b4ead307fb57eb26c375e0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415459
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-06-04 14:13:33 +00:00
Robert Phillips
6dd19477c5 Make the SkGpuDevice factories return SkBaseGpuDevices
and make SkSurface_Gpu hold an SkBaseGpuDevice.

Bug: skia:11837
Change-Id: Ief3b78440bce95a6b95f26642130ba8e2f2f3193
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415460
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-04 14:13:13 +00:00
Mike Reed
d7b8dc086b Draft explainer for Text API
Change-Id: I35ef67417fdfb5aa17dbeee92631d72294e9c29c
No-Try: true
Docs-Preview: https://skia.org/?cl=413837
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/413837
Reviewed-by: Mike Reed <reed@google.com>
2021-06-04 13:17:45 +00:00
John Stiles
010d088e3b Migrate dest-texture uniforms to GrGLSLBuiltinUniformHandles.
Previously, these lived in GrGLSLXferProcessor because only XPs needed
to support readback from the destination. We want the allow destination
readback from anywhere in the fragment pipeline (either FPs or XPs), so
a shared location was needed.

Followup CLs will continue to move dest-texture support out of XPs and
into shared/common homes.

Change-Id: Ic14de687463c0b234abe2d293b934d726646a17d
Bug: skia:12066
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415556
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-06-04 13:00:53 +00:00
skia-autoroll
08d0d86b81 Roll ANGLE from 152450f82146 to fafd64a62e5b (20 revisions)
152450f821..fafd64a62e

2021-06-04 syoussefi@chromium.org Vulkan: SPIR-V Gen: Matrix decorations
2021-06-04 m.maiya@samsung.com Vulkan: Handle immutable sampler state change in TextureVk
2021-06-03 cnorthrop@google.com Tests: Skip flaky capture_replay_tests
2021-06-03 syoussefi@chromium.org Vulkan: Fix missing operand list in OpExecutionMode parser & builder
2021-06-03 jmadill@chromium.org Revert "Capture/Replay: Emit SetupReplay() late"
2021-06-03 cnorthrop@google.com Revert "FrameCapture: Write the frame cpp file even if frame is empty"
2021-06-03 jmadill@chromium.org Add missing buffer validation to BeginTransformFeedback.
2021-06-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 2e0ecf9812ba to c25238228ea4 (11 revisions)
2021-06-03 syoussefi@chromium.org Vulkan: SPIR-V Gen: Code blocks
2021-06-03 jmadill@chromium.org Experimental fix for stdout freopen race.
2021-06-03 ynovikov@chromium.org Revert "Make SH_CLAMP_INDIRECT_ARRAY_BOUNDS do proper AST transformation"
2021-06-03 cnorthrop@google.com Tests: Add Genshin Impact trace
2021-06-03 syoussefi@chromium.org Make SH_CLAMP_INDIRECT_ARRAY_BOUNDS do proper AST transformation
2021-06-03 jmadill@chromium.org Gold Tests: Fix sharding + batching.
2021-06-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 90c0551ca547 to c1e4abc1bcfe (2 revisions)
2021-06-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 682cfc04ad59 to c245c9a0bac1 (4 revisions)
2021-06-03 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 1413aecd34bf to b078d3ef5de8 (417 revisions)
2021-06-03 syoussefi@chromium.org Vulkan: SPIR-V Gen: Handle constants and constructors
2021-06-03 ynovikov@chromium.org Skip flaky end2end tests on Mac AMD OpenGL
2021-06-03 syoussefi@chromium.org Vulkan: SPIR-V Gen: Handle load/store access chain

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 lovisolo@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-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
Tbr: lovisolo@google.com
Test: Test: ImageTest.SourceAHBTarget2DExternalCycleThrough*Vulkan
Test: Test: angle_perftests --gtest_filter="*genshin_impact*"
Change-Id: I1df1b7ac9ffe99f074756cd879d6b984c8a1bc8c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415617
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-04 04:50:57 +00:00
skia-autoroll
727fbe089d Roll Dawn from 661928894ec9 to 2adb3c83e4b4 (13 revisions)
https://dawn.googlesource.com/dawn.git/+log/661928894ec9..2adb3c83e4b4

2021-06-04 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 0d7ea4bced28 to cd5492c91068 (5 revisions)
2021-06-03 enga@chromium.org Disable CompareFunctionsCompute test
2021-06-03 rharrison@chromium.org Add Starlark based configs to Dawn
2021-06-03 rharrison@chromium.org Revert "Convert Dawn to use Starlark script to generate configs"
2021-06-03 yunchao.he@intel.com Polish 2D texture copy splitter on D3D12
2021-06-03 rharrison@chromium.org Convert Dawn to use Starlark script to generate configs
2021-06-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 142143109a6b to 0d7ea4bced28 (6 revisions)
2021-06-03 senorblanco@chromium.org Implement EGLImage external texture API for GL.
2021-06-03 bclayton@google.com Move texture_storage access into type
2021-06-03 cwallez@chromium.org Add a toggle to disallow_spirv.
2021-06-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 8324d227a1c4 to 142143109a6b (7 revisions)
2021-06-03 jiawei.shao@intel.com Remove useless function declarations
2021-06-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from a70c14dbcef6 to 8324d227a1c4 (2 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from a70c14dbcef6 to cd5492c91068

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC enga@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: enga@google.com
Change-Id: I8d1285da0f00d9379fb4d5ea4fbea5bdae9b5b29
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415636
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-04 04:49:22 +00:00
skia-autoroll
2692b0dd11 Roll SwiftShader from c1e4abc1bcfe to efe254de5d88 (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c1e4abc1bcfe..efe254de5d88

2021-06-03 capn@google.com Remove git submodules before rolling into Android
2021-06-03 capn@google.com Value-initialize all vk::GraphicsState members
2021-06-03 capn@google.com Explicitly initialize VkSpecializationInfo fields

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 lovisolo@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: lovisolo@google.com
Change-Id: Id57fd4621e68954feabea0e20d18ecd0a8661a04
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415616
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-04 04:45:52 +00:00
Chris Dalton
568ef84d3f Re-enable sk_VertexID support on SwiftShader Vulkan
The vertex ID bug was specific to legacy GL SwiftShader. The unit test
failure on the Vulkan cc_unittests was actually due to skia:12056.

Bug: skia:11965
Bug: skia:12056
Bug: b/188239650
Change-Id: I0fd27c6e48a7a14d0367d2e7db7e4e70cd7dad1d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415116
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-04 01:08:42 +00:00
Chris Dalton
a1a3afe951 Always trigger DMSAA when there is stencil
This ensures stencil contents get properly preserved between render
passes, if needed.

Bug: skia:11396
Change-Id: Ib4219a5b4cbc7015ec16bb0294e5836c48ac29e4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415357
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-03 22:15:12 +00:00
skia-autoroll
7aa7939a60 Roll SK Tool from cd1617622f0e to 15a35d1c64b9
https://skia.googlesource.com/buildbot.git/+log/cd1617622f0e..15a35d1c64b9

2021-06-03 lovisolo@google.com Update BUILD files with Gazelle.
2021-06-03 kjlubick@google.com [gold] Roll out periodic diff work
2021-06-03 49699333+dependabot[bot]@users.noreply.github.com Bump dns-packet from 1.3.1 to 1.3.4
2021-06-03 kjlubick@google.com [gold] Rename left digests to new digests in periodic tasks
2021-06-03 kjlubick@google.com [gold] Move diffwork pubsub messages from indexer to periodic service.
2021-06-03 lovisolo@google.com [bazel] Update Bazel CIPD package to v4.1.0.

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/sk-tool-skia
Please CC borenet@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/+doc/master/autoroll/README.md

Tbr: borenet@google.com
Change-Id: I4ac39fc0fefceea4b5902c1257196fa8479ae69c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415416
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-03 19:44:42 +00:00
Robert Phillips
4df7943d16 [ngatoy] Make RectCmd store a fake paint
Bug: skia:11837
Change-Id: I72dfef62f497af417d3f7248a58aad272f095398
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415171
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-03 19:33:03 +00:00
Robert Phillips
dca342a773 Move discard and asyncRescaleAndReadPixels* to SkBaseGpuDevice
The goal here is to delegate these calls to the SkBaseGpuDevice-derived
classes so SkSurface_Gpu doesn't need to know about SDCs.

Bug: skia:11837
Change-Id: I28bea7ad1cf5d9fc0ce690b2bd70ff79e022f8d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414998
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-03 19:33:02 +00:00
Michael Ludwig
785ecad487 Disable VK_NV_acquire_winrt_display in our apps
The GTX 1080 Ti with driver version 466.47 wants to enable
VK_NV_acquire_winrt_display, which depends on VK_EXT_direct_mode_display
but VK_EXT_direct_mode_display is not one of its available device
extensions. This leads to correct validation errors that prevent viewer
from launching in debug mode.

Change-Id: I989477861007d7a5baa529698ffd86910618b9f8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415173
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
2021-06-03 19:14:38 +00:00
Julia Lavrova
7856eb88ed Breaking functionality into separate steps
First try, all tests work.

Change-Id: Ifb1b102b3fc45d714d706e9c123d3ca0aeafd600
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415156
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-06-03 18:45:47 +00:00
Robert Phillips
fa8af0a545 Add methods to access the top device's render target proxy
While the SDC-accessing versions have to stick around due to their
usage in unit tests, they will return null when exercising the NGA.
The render-target-proxy versions will work in both the OGA and NGA
and should, thus, be prefered.

Bug: skia:11837
Change-Id: I36213472e46e9da3ae6561f80d413090ceb6ad3e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415058
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-06-03 18:16:27 +00:00
John Stiles
e69f25f4f4 Add GrFragmentProcessor flag indicating dest-color readback.
The GrProcessor analysis pass needs to know if the dest-texture is
required. XPs already had a flag for this; now FPs have one as well.

Change-Id: I4ff88edfc7e9c735e9c2e23327c65e9f569a6b60
Bug: skia:12066
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415166
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-06-03 18:14:17 +00:00
Kevin Lubick
78297af33a [canvaskit] Remove *Builders in favor of Malloc.
Change-Id: Ie785281d0759575ff4f7ece379dceeb065765405
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414521
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2021-06-03 17:43:58 +00:00
Kevin Lubick
82186e944e [canvaskit] Remove 2d arrays from path commands
Change-Id: I6fbd91f4073ab5eca319bd6b44c72bb9904375bc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414238
Reviewed-by: Nathaniel Nifong <nifong@google.com>
2021-06-03 17:43:42 +00:00
John Stiles
053eb1ba91 Remove early-out from color analysis pass.
This early-out was a useful optimization when the passed-in count could
be large, but the analysis pass only takes 1-2 inputs nowadays, so it
doesn't add value. (Even if we did have a lot of inputs, most of the
checks in this loop correspond directly to a flag-bit check on an FP;
they aren't expensive either way.)

Also, did some minor polish/variable renaming for readability.

Change-Id: I556db3269fd2f1781b4b0ff26a252ba4c76a1d4b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415378
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-06-03 17:12:17 +00:00
Robert Phillips
edcd431f42 Retract the SDC from GMs where possible (take 2)
In the future, the SDC won't be return by SkCanvas/SkDevices and gms/tests that rely on it won't be run. These GMs don't actually require the SDC.

There is also some opportunistic renaming going on.
TBR=michaelludwig@google.com

Change-Id: I15cbaf69269892fbbf229c0263b567425049c3f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415167
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-03 16:21:27 +00:00
dependabot[bot]
4377bc917f Bump ws from 7.3.0 to 7.4.6 in /tools/perf-canvaskit-puppeteer
Bumps [ws](https://github.com/websockets/ws) from 7.3.0 to 7.4.6.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/websockets/ws/releases">ws's releases</a>.</em></p>
<blockquote>
<h2>7.4.6</h2>
<h1>Bug fixes</h1>
<ul>
<li>Fixed a ReDoS vulnerability (00c425ec).</li>
</ul>
<p>A specially crafted value of the <code>Sec-Websocket-Protocol</code> header could be used
to significantly slow down a ws server.</p>
<pre lang="js"><code>for (const length of [1000, 2000, 4000, 8000, 16000, 32000]) {
  const value = 'b' + ' '.repeat(length) + 'x';
  const start = process.hrtime.bigint();
<p>value.trim().split(/ *, */);</p>
<p>const end = process.hrtime.bigint();</p>
<p>console.log('length = %d, time = %f ns', length, end - start);
}
</code></pre></p>
<p>The vulnerability was responsibly disclosed along with a fix in private by
<a href="https://github.com/robmcl4">Robert McLaughlin</a> from University of California, Santa Barbara.</p>
<p>In vulnerable versions of ws, the issue can be mitigated by reducing the maximum
allowed length of the request headers using the <a href="https://nodejs.org/api/cli.html#cli_max_http_header_size_size"><code>--max-http-header-size=size</code></a>
and/or the <a href="https://nodejs.org/api/http.html#http_http_createserver_options_requestlistener"><code>maxHeaderSize</code></a> options.</p>
<h2>7.4.5</h2>
<h1>Bug fixes</h1>
<ul>
<li>UTF-8 validation is now done even if <code>utf-8-validate</code> is not installed
(23ba6b29).</li>
<li>Fixed an edge case where <code>websocket.close()</code> and <code>websocket.terminate()</code> did
not close the connection (67e25ff5).</li>
</ul>
<h2>7.4.4</h2>
<h1>Bug fixes</h1>
<ul>
<li>Fixed a bug that could cause the process to crash when using the
permessage-deflate extension (92774377).</li>
</ul>
<h2>7.4.3</h2>
<h1>Bug fixes</h1>
<ul>
<li>The deflate/inflate stream is now reset instead of reinitialized when context
takeover is disabled (<a href="https://github-redirect.dependabot.com/websockets/ws/issues/1840">#1840</a>).</li>
</ul>
<h2>7.4.2</h2>
<h1>Bug fixes</h1>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f5297f7090"><code>f5297f7</code></a> [dist] 7.4.6</li>
<li><a href="00c425ec77"><code>00c425e</code></a> [security] Fix ReDoS vulnerability</li>
<li><a href="990306d144"><code>990306d</code></a> [lint] Fix prettier error</li>
<li><a href="32e3a8439b"><code>32e3a84</code></a> [security] Remove reference to Node Security Project</li>
<li><a href="8c914d18b8"><code>8c914d1</code></a> [minor] Fix nits</li>
<li><a href="fc7e27d12a"><code>fc7e27d</code></a> [ci] Test on node 16</li>
<li><a href="587c201bfc"><code>587c201</code></a> [ci] Do not test on node 15</li>
<li><a href="f672710797"><code>f672710</code></a> [dist] 7.4.5</li>
<li><a href="67e25ff502"><code>67e25ff</code></a> [fix] Fix case where <code>abortHandshake()</code> does not close the connection</li>
<li><a href="23ba6b2922"><code>23ba6b2</code></a> [fix] Make UTF-8 validation work even if utf-8-validate is not installed</li>
<li>Additional commits viewable in <a href="https://github.com/websockets/ws/compare/7.3.0...7.4.6">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ws&package-manager=npm_and_yarn&previous-version=7.3.0&new-version=7.4.6)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/google/skia/network/alerts).

</details>

This is an imported pull request from
https://github.com/google/skia/pull/80

GitOrigin-RevId: a9a98b522212ab86f81c15979a3550ea7e276edb
Change-Id: Ia61edf467fb25d96bed7066b9355975005ca6393
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415377
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2021-06-03 16:21:18 +00:00
Michael Ludwig
357e67e7af Fix potential overflow when output dimensions are very large
Previous code had assumed that width/height of targetOutput bounds were
reasonable and restricted by having to allocate an actual buffer. For
picture recording, etc. there is no such limit and the canvas dimensions
are unbounded, so this prevents the overflow and UB.

TBR=robertphillips@google.com
Change-Id: If00e2327021c0fa2515b5e33fd1dbb5451ed2fe9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415169
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
2021-06-03 14:52:57 +00:00
Joe Gregorio
1bc9f373d5 Turn on Perf tests for Pixel4.
Change-Id: Ib4ffd2687fe2db09b73f03cd792cea01469affaa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/412669
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
2021-06-03 14:30:17 +00:00
Eric Boren
690a215606 [infra] Remove most asset scripts, update create_and_upload
Change-Id: I4f0d1358eeb2046ebf7b7830dd9e7c39add33393
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414997
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2021-06-03 13:14:17 +00:00
Michael Ludwig
0b0ae67e27 Reland "Reland "Draw image filters directly under non-axis-aligned transforms""
This reverts commit 1fe2b80dc7.

Reason for revert: TODO investigating chrome unit test failures

Original change's description:
> Revert "Reland "Draw image filters directly under non-axis-aligned transforms""
>
> This reverts commit 7712db9c24.
>
> Reason for revert: blink unittests and maybe vulkan+skiarenderer masks appear broken. The blink unittests had actually failed with original CL, but was missed because of focus on Android. Not sure what's going on yet.
>
> Original change's description:
> > Reland "Draw image filters directly under non-axis-aligned transforms"
> >
> > This reverts commit 6cafdc069b.
> >
> > Reason for revert: Fixes unit test failure in Android
> >
> > In the original version, this internalSaveLayer() returned early if the
> > strategy was kNoLayer. This diverged from the old code that updated the
> > canvas' clip bounds and then returned before making the layer. A comment
> > had suggested this was maybe okay to switch to this early out, but it
> > turns out that's not the case.
> >
> > In Android's unit tests, it queries the clip bounds on a recording canvas
> > which always uses a no-layer strategy. However, we do need to set the
> > clip bounds of these types of canvas' (or virtual wrappers of a real
> > canvas) so that they stay consistent with a real canvas.
> >
> > The unit tests had two failures, first the bounds and second a color
> > mismatch after reading back. However, the bounds test was an ASSERT_EQ
> > inside an SkDrawable function. ASSERT_EQ aborts the current function, so
> > it never ran the drawRect that sets the color to green. The later
> > readback is outside the drawable function, so that test still happened
> > and failed. The only real issue to fix is the clip bounds tracking; once
> > that unit test succeeds, the color readback will work properly.
> >
> > Original change's description:
> > > Revert "Draw image filters directly under non-axis-aligned transforms"
> > >
> > > This reverts commit f8f23b2030.
> > >
> > > Reason for revert: b/172617382 is creating issues for Android's Webview
> > >
> > > Original change's description:
> > > > Draw image filters directly under non-axis-aligned transforms
> > > >
> > > > This removes hacking the canvas CTM and wrapping the paint's image
> > > > filter in a special MatrixTransform that computed a post-transform
> > > > instead of its documented pre-transform effect. Performance-wise, the
> > > > computed layer sizes should be about the same, but we avoid one less
> > > > render target switch because we apply the transformation while drawing
> > > > to the dst device, vs. transforming into another temporary layer and
> > > > then drawing that to the dst device.
> > > >
> > > > Several important changes in behavior here:
> > > > 1. The DeviceCM record no longer has a stashed matrix to restore and
> > > >    holds its restoration paint directly.
> > > > 2. Devices for image filter inputs can now have device-to-global
> > > >    transforms that are not integer translates.
> > > > 3. The MatrixTransform hack punted when there was perspective because it
> > > >    could produce excessively large temporary images, but the new version
> > > >    appears to work around that. We now impose a maximum layer size to
> > > >    protect against that and automatically scale the layer to prevent it.
> > > >    Perspective image filters otherwise now draw correctly.
> > > > 6. Updated layer sizing code to use the new image filter APIs
> > > > 7. Updated backdrop filter and restore filters to go through the same
> > > >    code paths, although restore filters skip the intermediate image
> > > >    transform.
> > > >     - layer bounds and transforms now go through the updated skif API
> > > >       and is hopefully more straight forward to understand.
> > > > 8. Now we can optimize root color filter nodes of a filter DAG, even if
> > > >    the entire DAG can't be represented as a color filter. The last node
> > > >    is pulled off and composed with the restoration paint instead.
> > > >
> > > > Bug: skia:9074,skia:9283
> > > > Change-Id: I1fa1d50135b9d6d453b02f89aa3cc3b54deab678
> > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/328376
> > > > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> > > > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > >
> > > TBR=bsalomon@google.com,robertphillips@google.com,fmalita@google.com,reed@google.com,michaelludwig@google.com
> > >
> > > Change-Id: I098d0e4b8ee067b436400eb9fea047e629544eec
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Bug: skia:9074
> > > Bug: skia:9283
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/332737
> > > Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> > > Reviewed-by: Derek Sollenberger <djsollen@google.com>
> > > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> >
> > TBR=djsollen@google.com,bsalomon@google.com,robertphillips@google.com,fmalita@google.com,reed@google.com,michaelludwig@google.com
> >
> > # Not skipping CQ checks because original CL landed > 1 day ago.
> >
> > Bug: skia:9074
> > Bug: skia:9283
> > Change-Id: Ifd5fed708d05a64ddccbd096fbf29896a44ef9f5
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333123
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
> > Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
>
> TBR=djsollen@google.com,bsalomon@google.com,robertphillips@google.com,fmalita@google.com,reed@google.com,michaelludwig@google.com
>
> Change-Id: I7758641e0279ab5af44794d70cd381bc0a69f956
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Bug: skia:9074
> Bug: skia:9283
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/333756
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

TBR=djsollen@google.com,bsalomon@google.com,robertphillips@google.com,fmalita@google.com,reed@google.com,michaelludwig@google.com

# Not skipping CQ checks because this is a reland.

Bug: skia:9074
Bug: skia:9283
Change-Id: Ifc0b962d0db8ef5c52fd31689306caca03420702
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/334040
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2021-06-03 13:09:57 +00:00
Kevin Lubick
df398c5552 [canvaskit] Fix demo image link
Assets are served from /demo not /demos
6be53e5cdf/demos/go/demoserver/main.go (L145)

Change-Id: I48b8f1a5c5320c9eb5acda25178b2e080ca17fcd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415165
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-06-03 12:57:50 +00:00
Kevin Lubick
7b6a92818d [canvaskit] Add Surface.makeFromTexture
This includes a helper Surface.makeFromTextureSource that will
make the gl calls with some sensible defaults.

Change-Id: I31bb2f3118b4749e77fb1fc2cb013d35ccb7cfce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/413336
Reviewed-by: Brian Osman <brianosman@google.com>
2021-06-03 12:29:07 +00:00
skia-autoroll
6f4bacb9df Roll ANGLE from c12f594a19b1 to 152450f82146 (17 revisions)
c12f594a19..152450f821

2021-06-03 ianelliott@google.com Fix ContextVk::handleNoopDrawEvent() for when no cmd buffer
2021-06-03 syoussefi@chromium.org Vulkan: Fix deferred clears vs 3D textures
2021-06-03 syoussefi@chromium.org Re-enable atomic counter tests on Vulkan/Windows
2021-06-03 ynovikov@chromium.org Mark a dEQP.GLES31 test slow
2021-06-02 cnorthrop@google.com Tests: Disable trace compilation for MSVC and GCC
2021-06-02 jmadill@chromium.org Add support for triggering gold tests.
2021-06-02 jplate@google.com CL: Add buffer enqueue commands
2021-06-02 jplate@google.com CL: Refactor front end entry functions
2021-06-02 cnorthrop@google.com Tests: Turn lineage_m on for Nvidia Linux
2021-06-02 ianelliott@google.com Create tests for GL_EXT_shader_framebuffer_fetch extension
2021-06-02 jplate@google.com CL: Remove object cache and fix multi-threading
2021-06-02 jplate@google.com CL: event creation for front end & passthrough
2021-06-02 kpiddington@apple.com Upstream Apple's direct-to-Metal backend: compile translator.
2021-06-02 jplate@google.com CL: kernel creation for front end & passthrough
2021-06-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 6be0134d13be to 682cfc04ad59 (6 revisions)
2021-06-02 jplate@google.com CL: Improve validation readablity
2021-06-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 9fc71f2e66f4 to 1413aecd34bf (475 revisions)

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 lovisolo@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-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
Tbr: lovisolo@google.com
Test: Test: angle_perftests --gtest_filter="*lineage_m*"
Change-Id: I62b75686e95864d175625dd51c6f99bad3f65c74
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415238
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-03 05:11:47 +00:00
skia-autoroll
f49d27553b Roll Dawn from 01407851360e to 661928894ec9 (4 revisions)
https://dawn.googlesource.com/dawn.git/+log/01407851360e..661928894ec9

2021-06-03 jiawei.shao@intel.com Re-enable the T2T copy workaround on Intel Gen9 and Gen9.5 GPUs
2021-06-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 5c0820c76be6 to a70c14dbcef6 (6 revisions)
2021-06-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 5ed3f68eb528 to 5c0820c76be6 (1 revision)
2021-06-02 rharrison@chromium.org Update manually generated configs

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 5ed3f68eb528 to a70c14dbcef6

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/dawn-skia-autoroll
Please CC enga@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: enga@google.com
Change-Id: I0bd6f638b0b59347be23a5726cd08e0c4424464c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415237
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-03 04:52:07 +00:00
skia-autoroll
cb66e25d23 Roll SwiftShader from 90c0551ca547 to c1e4abc1bcfe (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/90c0551ca547..c1e4abc1bcfe

2021-06-02 srisser@google.com Make clang-format-all.sh only look at source files
2021-06-02 srisser@google.com Pass unclamped fragcoord.z to shader

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 lovisolo@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/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: lovisolo@google.com
Change-Id: Ic132ea91618b2e9553b31ce3cc46f0b46d51d345
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415236
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-03 04:47:47 +00:00
Leandro Lovisolo
6e82db35a6 Update Bazel CIPD package to v4.1.0.
Change-Id: Ia1235a84adc4203ddf41b40ceecf598bc33dfe6e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415163
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
2021-06-03 02:12:32 +00:00
John Stiles
03e7830200 Set up the dest-proxy-view texture binding before emitting FP code.
Emitting this sampler before FPs are emitted will allow FPs to do read-
back from the destination texture. (There are other missing pieces as
well--e.g. the fragment processor EmitArgs need to include this sampler
and its associated uniform, but that isn't included in this CL.)

Note that each rendering API implements texture-binding separately, so
all of them needed to be modified slightly to switch around the binding
order.

Change-Id: Ie32aa412422d2a6cc4d278a55b8263be082356eb
Bug: skia:12066
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414999
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-06-02 23:10:41 +00:00
Chris Dalton
bd6c7b1778 Use the correct "Wang's formula" for conics on the GPU
Bug: skia:10419
Change-Id: Idf62f0253bd7ef07ad117cb4c2b750aa2a5be4d3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414636
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Tyler Denniston <tdenniston@google.com>
2021-06-02 23:10:21 +00:00
Robert Phillips
7d05cdafe4 Revert "Retract the SDC from GMs where possible"
This reverts commit b8416d27be.

Reason for revert: pre-abandon context failures

Original change's description:
> Retract the SDC from GMs where possible
>
> In the future, the SDC won't be return by SkCanvas/SkDevices and gms/tests that rely on it won't be run. These GMs don't actually require the SDC.
>
> There is also some opportunistic renaming going on.
>
> Change-Id: Ib137232f4352fce586105298cda00a697d2efade
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414902
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>

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

Change-Id: I7675996c43ac94e70d60fdadd3e0203531de8289
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415159
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-02 22:46:12 +00:00
Robert Phillips
b8416d27be Retract the SDC from GMs where possible
In the future, the SDC won't be return by SkCanvas/SkDevices and gms/tests that rely on it won't be run. These GMs don't actually require the SDC.

There is also some opportunistic renaming going on.

Change-Id: Ib137232f4352fce586105298cda00a697d2efade
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414902
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-06-02 21:28:11 +00:00
skia-autoroll
0d41b1f52d Roll SK Tool from 5251331b2253 to 1c245dbb1f17
https://skia.googlesource.com/buildbot.git/+log/5251331b2253..1c245dbb1f17

2021-06-02 lovisolo@google.com [gold] Port cluster-page-sk to TypeScript.
2021-06-02 lovisolo@google.com [gold] Port cluster-digests-sk to TypeScript.
2021-06-02 kjlubick@google.com [gold] Remove old flags from frontend
2021-06-02 rmistry@google.com Add new CQ specific fields to tasks.json

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/sk-tool-skia
Please CC borenet@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/+doc/master/autoroll/README.md

Tbr: borenet@google.com
Change-Id: I4a3cbe83024f37ccd62a792f001d0a1ebc2fba80
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415096
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-02 20:26:42 +00:00
Brian Salomon
3e2fe2b007 One function for computing rt-adjust uniform once flip is determined.
Add some comments explaining why different APIs flip the way they do.

Remove flip from Metal code generator and reverse the way flipping
occurs in Metal backend.

Change-Id: Ibec71e8d96c66d4b34b5ce6417056674090f979c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/413236
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-06-02 19:02:06 +00:00
Chris Dalton
e6f45318ef Make GrWangsFormula::conic take "precision" instead of "tolerance"
Rearranges the algebra to use "precision". This makes it consistent
with the other formulas and removes the need for the caller to think
about inverting its precision value.

Bug: skia:10419
Change-Id: I186d03393952983e86b0bef69e1f89f86cdbb423
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414616
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Tyler Denniston <tdenniston@google.com>
2021-06-02 18:58:06 +00:00
Chris Dalton
2da6c9cefc Decouple conic and cubic implementations of Wang's formula in SkSL
With the correct conic equation there won't be any flops to share, so
it doesn't make sense to try and combine the two.

Bug: skia:10419
Change-Id: If684963cdc6da5add2fab9885a3a2dff502a678c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414237
Reviewed-by: Tyler Denniston <tdenniston@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-02 18:56:56 +00:00
Chris Dalton
d9bdc32347 Split GrPathTessellator subclasses into their own files
It was becoming a bit chaotic to have so many different algorithms in
one file.

Bug: skia:10419
Change-Id: I477b7b65439d16b0f983e10952cb41ec881e8183
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/413856
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-02 18:46:56 +00:00
Brian Salomon
10461f3a6a Reland "Reland "Use SkImage_Raster's unique ID to cache textures.""
Bug: skia:11983

Change-Id: Ib637af99f4abcd427570bd4dda31488fbcb14ab7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414876
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-06-02 18:41:56 +00:00
Brian Osman
ee0d18add1 Hoist strlen out of loop in SkRuntimeEffect::find*
Change-Id: Iedc8242167ac0dedc177511eb75e9e85002799f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414905
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-02 18:34:26 +00:00
Greg Daniel
661b5d0e87 Query AHB usage for renderable when importing into Skia.
Previously we were always passing in true for isRenderable. This is not
valid since AHBs passed into this SkImage::MakeFromAHardwareBufferWithData
call are not required to be renderable.

Bug: b/189942074
Change-Id: Ib097b565db069fc413efb15a209687536b2ba090
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414901
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2021-06-02 18:25:16 +00:00
Florin Malita
c27e0dc64f [androidkit] Add an extra Skottie sample to CubeActivity
Also update SkottieSample to always clear its dest rect (for animations
which are not opaque).

Change-Id: I36c6172d468567ee8e03d97dd707e03ca968aa26
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414898
Commit-Queue: Florin Malita <fmalita@google.com>
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
2021-06-02 18:10:06 +00:00
Florin Malita
0844cfa839 [androidkit] Add touch scroll/drag support to CubeActivity
Change-Id: If1edf8e374650ac3f464c5c08b3cf6cbb11034f6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414397
Commit-Queue: Florin Malita <fmalita@google.com>
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
2021-06-02 18:09:26 +00:00
John Stiles
52cb1d059d Rename GrXferProcessor::DstProxyView to GrDstProxyView.
At present, only Xfer processors allow reading back from the destination
image since they are in charge of blending. However, we'd like to expose
the destination color to fragment processors and Runtime Effects in the
future. To make this possible, the DstProxyView will need to be
accessible outside of Xfer processors.

This CL migrates DstProxyView to be a top-level Ganesh class and fixes
up the references to it throughout Skia. It's interesting to note that
several call sites were already using typedefs to hide the class
nesting anyway.

Change-Id: I93a294aa097f9319a968503c4f2f7e4f388ff033
Bug: skia:12066
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414899
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-06-02 18:00:47 +00:00
Nathaniel Nifong
2e76c84b8b Use WebGL2, not EGL, and don't use replace clip op.
Change-Id: I9e6ae22a646b9cf1f3c20857ffc50ecafe66174a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414903
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-06-02 17:00:19 +00:00
Brian Salomon
7db0e2f942 Remove wrapping of GL sync objects around EGL syncs in EGL test contexts
We did this to allow pipelining of GPU/CPU work in nanobench on devices
that don't have GL sync objects (or NV fence). However, we've found
that on the AndroidOne/Mali400 and Nexus7/Tegra3 devices that the
majority of a frame's work can be reordered to complete before an
earlier EGL sync. This makes the results unreliable, especially the
min_ms result. Just accept that we will sync the CPU and GPU on these
devices.

Change-Id: I04d168cbb05504d367f6a06b7b4903163ab2aa79
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414897
Commit-Queue: Brian Salomon <bsalomon@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
2021-06-02 16:21:43 +00:00
Joe Gregorio
5e6a1fec93 A set of scripts that analyzes jobs.json to look for possible holes in our
testing.

+rmistry for reviewing the scripts
+egdaniel for reviewing the Vulkan outpout.

Below are the three types of analysis done so far, showing
Test, Perf, and Vulkan jobs that are not being run:


$ make missing_test_jobs
cpu_or_gpu_value,model
Snapdragon808,Nexus5x


$ make missing_perf_jobs
cpu_or_gpu_value,model
AVX,VMware7.1
Rome,GCE
Snapdragon821,Pixel
SwiftShader,GCE


$ make missing_vulkan_jobs
cpu_or_gpu_value,model
AVX,VMware7.1
AVX2,GCE
AVX2,MacBookPro11.5
AVX2,NUC5i7RYH
AVX512,GCE
AVX512,Golo
Adreno330,Nexus5
Adreno418,Nexus5x
AppleA11,iPhone8
AppleA13,iPhone11
AppleM1,MacMini9.1
IntelBayTrail,NUCDE3815TYKHE
IntelHD2000,ShuttleA
IntelHD4400,NUCD34010WYKH
IntelHD6000,MacBookAir7.2
IntelHD615,MacBook10.1
IntelIris5100,MacMini7.1
IntelIris6100,NUC5i7RYH
IntelUHDGraphics605,Sparky360
Mali400MP2,AndroidOne
MaliT760,GalaxyS6
PowerVRGE8320,TecnoSpark3Pro
PowerVRGT7600,iPhone7
PowerVRGT7800,iPadPro
PowerVRGX6450,iPhone6
RadeonHD8870M,MacBookPro11.5
RadeonVega3,Spin514
Rome,GCE
Snapdragon800,Nexus5
Snapdragon808,Nexus5x
Snapdragon821,Pixel
SwiftShader,GCE
Tegra3,Nexus7

Change-Id: I18c1688fa20c73bfbaf36221596d7784dc0f1212
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414442
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2021-06-02 16:11:43 +00:00
Michael Ludwig
fa1cb40c2d Compute max inclusive vertex for drawIndexed in FillRectOps
Bug: b/188881498
Change-Id: If275e6f9aee1787bfd29dd08598c53f781ec9368
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414896
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2021-06-02 16:03:13 +00:00