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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>