Commit Graph

60432 Commits

Author SHA1 Message Date
skia-autoroll
a930605087 Roll SK Tool from 043d6a813062 to b96e4e1e7cf5
https://skia.googlesource.com/buildbot.git/+log/043d6a813062..b96e4e1e7cf5

2022-04-27 johnstiles@google.com Revert "[perf] day-range-sk enforce begin < end."
2022-04-27 jcgregorio@google.com Update elements-sk and common-sk to latest.
2022-04-27 rmistry@google.com [npm-audit-mirror] Accept all versions of common-sk and elements-sk
2022-04-27 rmistry@google.com [npm-audit-mirror] Remove maxage:10y
2022-04-27 jcgregorio@google.com Revert "Pick up latest elements-sk and common-sk."
2022-04-27 jcgregorio@google.com Pick up latest elements-sk and common-sk.
2022-04-27 jcgregorio@google.com [common] Add with.FlagSetOpt().
2022-04-27 rmistry@google.com Fix missing acorn@^8.0.0 dependency in newer nvm versions

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 file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Tbr: borenet@google.com
Change-Id: Ie7028db7b2d1c99488b9897e4c8777d4592212cc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534544
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-27 17:19:59 +00:00
Aditya Kushwah
8065fff70c Plumb label string from cache of scratch texture.
In this CL, cache of previously created scratch texture accepts the
label and passes it to the GrGpuResource by making use of existing
resource.

Bug: chromium:1164111
Change-Id: Id798aa5f3fe9baa00c2f409febf4d5fcbe3a675a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/532276
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-04-27 17:17:30 +00:00
Brian Salomon
62471d80c9 Manual roll Dawn from 7b20709d0ea8 to 7098d3d69282 (12 revisions)
https://dawn.googlesource.com/dawn.git/+log/7b20709d0ea8..7098d3d69282

2022-04-27 zhaoming.jiang@intel.com tint: Add enable directive for extensions
2022-04-27 lokokung@google.com Remove PersistentCache and suppress shader cache tests.
2022-04-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from f685346e2e51 to e799ba9fb972 (1 revision)
2022-04-26 dsinclair@chromium.org Fixup validator tests added during split from resolver.
2022-04-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 5f5faa3a2aad to 79d4c6cae485 (3 revisions)
2022-04-26 cwallez@chromium.org DawnTest: handle buffer readbacks not aligned to 4.
2022-04-26 bclayton@google.com tools: Fix LoadCredentials()
2022-04-26 bclayton@google.com Revert "Add External Texture Gamma/Gamut Correction"
2022-04-26 bclayton@google.com Roll third_party/webgpu-cts/ 501cb3643..e23ca12d5 (7 commits)
2022-04-26 bclayton@google.com dawn/common: Comment UNIMPLEMENTED()
2022-04-26 cwallez@chromium.org utils: Add more defaults for CreateBuffer/TextureImageCopy
2022-04-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f13461dbb23c to 5f5faa3a2aad (1 revision)

Change-Id: I711c74e9fca2ce8e5b0c4711f4bc371304e7f625
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534497
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-27 16:16:06 +00:00
Brian Osman
bed6d25fc3 Fix the shared library extension on Apple platforms
We were generating .so files, but expect the outputs to be .dylib
(in places where we dlopen, etc.). Further, the file-type of the
libraries was actually DYLIB, not BUNDLE.

This fixes an issue with ANGLE-on-Mac, where we couldn't find libEGL,
and that (in turn) couldn't find libGLESv2.

Bug: skia:13040
Change-Id: I5eb212b9f19698cf0e0459df8ba70e62e87f5a4c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534558
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-27 15:58:06 +00:00
Robert Phillips
87a50d3fcf [graphite] Break ground on local coords support
This just plumbs through a flag that allows snippets to request a
dev2Local matrix uniform and uses it for gradients and the image shader.

Bug: skia:12701
Change-Id: If1eadff8d5e40d81d9e3794db4b7f816127c4b75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529810
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-04-27 15:25:09 +00:00
John Stiles
378ca242bf Move program-kind check out of inner benchmark loop.
Noticed that this check could move outside the loop while working on
http://review.skia.org/534560, but didn't want to muddle such a
straightforward CL with additional changes.

Change-Id: I84e0e3348a782f4f5d1b451a48fb14bae87aa33d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534561
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-27 15:22:52 +00:00
Michael Ludwig
994a0d60da Remove guard and legacy behavior for edge AA flag checks
Change-Id: I8de02cd5c8d0e70b2cf1ac2d359507814c984ff6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533806
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2022-04-27 14:44:34 +00:00
Ben Wagner
baa665a6db [svg] Treat empty viewBox and viewPort as singular.
An empty viewPort should always send everything to a point. An empty
viewBox should either draw nothing or fill the viewPort with the color
of a single point of no area.

Change-Id: I0d4f0cea3918acc4edc98043f3a7155e4e171bff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533809
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-27 14:38:51 +00:00
Ben Wagner
82514c715d [xml] Correct assert that parser is in an element.
In SkDOM the predicate "is currently inside an element" is expressed by
`fLevel > 0`. When starting an element this should be tested before
incrementing fLevel since this is testing if the element being started
is top level or not. When ending an element this should be tested before
decrementing fLevel since when ending an element the parser is currently
inside an element.

Previously the decrement when ending an element occured too soon,
causing flushAttributes to fail a pre-condition assert that it is not
run at top level (without an element present). Fix this by moving the
decrement (which may signal a return to the top level) after the call to
flushAttributes in onEndElement.

Change-Id: I1a45a3dae5a5af97ca3340e56ddc18b9ae94d374
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533808
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-27 14:38:34 +00:00
John Stiles
c6341e15bd Apply SkSL optimizations properly in nanobench.
At http://go/skiareview/c/skia/+/400622/55/bench/SkSLBench.cpp#84,
during the initial DSL parser land, Nanobench was updated to construct
a DSLParser directly instead of calling SkSLCompiler::convertProgram.
This skipped over some important compiler setup--specifically, applying
optimization flags and resetting the inliner.

Unfortunately this means that our optimized benchmark results for the
past ~9 months are not trustworthy at all. The numbers are wildly off:
http://screen/YfZHDvhs9V9Ka6x

"Unoptimized" benchmarks seem to be correct in practice, due to
redundant flag checks. "Optimized" benchmarks, however, are reporting
much better values than they should. The benchmark would stop inlining
after a few iterations of the test, because we'd quickly hit our
internal inlining limit
(https://osscs.corp.google.com/skia/skia/+/main:src/sksl/SkSLInliner.cpp;l=70)
at which point the inliner would turn itself off.

To fix the root cause, Nanobench uses SkSLCompiler::convertProgram
again. Additionally, Compiler::optimize now defensively calls
inliner.reset() before inlining. A second reset shouldn't be necessary,
but it's harmless and free. (This just sets two int fields to zero.)

Change-Id: I690ead14137e4bf74d0f7aa32812bd5b3c21bef5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534560
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-04-27 14:33:43 +00:00
John Stiles
2e1ba7c9c3 Improve benchmarks slightly by avoiding stack<>.
In practice, libc++ implements stack on top of deque, and is much less
efficient than something like an SkSTArray for our use case. This change
improves my benchmarks locally by ~1% on sksl_large.

Change-Id: Ic5c45344594d658f47bae66c54fa92f916da6cb0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534496
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-27 14:19:19 +00:00
Michael Ludwig
c88e9476ac Remove stroke tessellator legacy guard
Bug: skia:12703, skia:13056
Change-Id: I84ba265125afb7499d04ca533cf6a2322808aee4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534198
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2022-04-27 14:18:47 +00:00
Michael Ludwig
a6eaac0595 Disable experimental HW tessellation
This should make it so the HW tessellation path renderers are never
used; it will always select the atlas or direct fixed-count renderers
instead. This CL will give us a good indication of what visual diffs
to expect, layout tests to rebase, and any performance regressions.

If those are acceptable, then we can proceed with the rest of the code
removal.

Bug: skia:13263
Change-Id: I273bb231461932047768c1c7233ae4291483bc95
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533810
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2022-04-27 13:34:09 +00:00
skia-autoroll
3d6493a63d Roll vulkan-deps from e799ba9fb972 to 4f93dbdc6060 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/e799ba9fb972..4f93dbdc6060

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

To file a bug in skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bsalomon@google.com
Change-Id: Iaf740ad122ea2aef826dbe996df8953e458c4153
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534338
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-27 09:07:30 +00:00
skia-autoroll
2c40d50dc6 Roll ANGLE from 9d6b3a7ee45b to 95c1ff52b110 (12 revisions)
9d6b3a7ee4..95c1ff52b1

2022-04-27 j.vigil@samsung.com EGL: Fix EGL_KHR_mutable_render_buffer
2022-04-27 romanl@google.com Log debuggerd $PID output when instrumentation gets stuck.
2022-04-26 yuxinhu@google.com check integer overflow in Texture copyImage
2022-04-26 romanl@google.com Add missing result_skip and result_fail.
2022-04-26 gman@chromium.org Metal:ReadPixels AMD Copy Texture to Buffer optimization
2022-04-26 cclao@google.com Vulkan: Improve GetStorageMemoryType logic
2022-04-26 cnorthrop@google.com Roll chromium_revision 192db13f85..c7e51a124f (995097:996181)
2022-04-26 romanl@google.com Dump logcat if instrumentation doesn't finish in 10 minutes.
2022-04-26 romanl@google.com Configure logging in perf and gold tests to include time.
2022-04-26 cnorthrop@google.com DEPS: Remove deprecated chromium dep
2022-04-26 syoussefi@chromium.org Tests for Nvidia/Vulkan bugs with tessellation control
2022-04-26 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f13461dbb23c to 5f5faa3a2aad (1 revision)

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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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: bsalomon@google.com
Test: Test: angle_end2end_test --gtest_filter=EGLSingleBufferTest
Change-Id: I216f78299d32d76f6e0947828751b09309e84fd7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534297
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-27 05:32:44 +00:00
skia-autoroll
b75c2c614e Roll Chromium from 2848cc8888b9 to b25c2c54dc1b (556 revisions)
2848cc8888..b25c2c54dc

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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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
Tbr: bsalomon@google.com
Change-Id: Ia2edbe76ca42bbdc522b099d5841020e39dcf5dd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534296
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-27 04:53:31 +00:00
skia-autoroll
be726c1069 Roll SwiftShader from 5f5faa3a2aad to f88fc3b53c52 (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/5f5faa3a2aad..f88fc3b53c52

2022-04-26 capn@google.com Always enable MemorySanitizer instrumentation for setup routines
2022-04-26 capn@google.com Replace rr::Config with an integer optimization level pragma
2022-04-26 capn@google.com Implement ScopedPragma
2022-04-26 stha09@googlemail.com GCC: add explicit template instantiation

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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: I0c0c47c966469cbf0c319e5c28a2b7b9252e4f41
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534298
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-27 04:47:13 +00:00
John Stiles
850de30a19 Fit Position in 4 bytes.
This limits our error reporting to the first 16MB of SkSL code in a
program, and error marks are limited to a run of 255 characters or
less. In practice, these limits do not affect normal code in any way.
This gives us the same tight memory footprint we originally had when
positions were stored as `int32 fLine`.

Change-Id: Idef04344324870a7b92aca154feb5e1a0121d284
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533699
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-04-27 00:01:06 +00:00
John Stiles
afa53f2e0b Replace Position::fEndOffset with fLength.
In a followup, this will make it easier to save memory.

Change-Id: I33e9838d1b3170362f4e7c58ba5f60a1928a4b55
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533698
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2022-04-27 00:01:06 +00:00
John Stiles
32902b3c82 Add Ethan and John to OWNERS for include/sksl/.
Change-Id: I1bf6a41290eebd45e2065fcedf86ef2e20866f54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534197
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-26 23:38:58 +00:00
Ethan Nicholas
b642184a32 Improved performance of determining line numbers during VM code generation
Change-Id: Ic1723ce7eb760d6b64ca5f694d94283334918899
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533805
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-26 22:32:28 +00:00
John Stiles
6bcfd35fda Generate SPIR-V golden outputs for switch tests.
These were not being generated because they were in the "settings" test
group; we have switch-rewrite settings that also need to be tested.
This was a blind spot in our golden output coverage; without these
tests, there is very little switch-statement usage in our corpus.
They are now in the SPIR-V test group as well.

Change-Id: Ic23b726d00c3047f2d19f7f6dc41e58e600e991c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534141
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-26 22:16:43 +00:00
skia-autoroll
cd797f013f Roll vulkan-deps from f685346e2e51 to e799ba9fb972 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/f685346e2e51..e799ba9fb972

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

To file a bug in skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bsalomon@google.com
Change-Id: Ibb8a97e59bb431f38bc3fc6bc73b992c6c66aaed
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534064
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 20:31:34 +00:00
Herb Derby
9081fb03b1 Move GrBlobSubRun into GrSubRun
Start moving to a single set of SubRuns by unifying the
Blob and the SubRun interfaces. GrSubRun will contain the
API for Blobs.

Change-Id: I0bb8eb2c8f62d243d1b158fcaf94b3bcac37f315
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533982
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-26 19:17:02 +00:00
skia-autoroll
ede5dae4db Roll SK Tool from 293094c85055 to 657aae3a4b31
https://skia.googlesource.com/buildbot.git/+log/293094c85055..657aae3a4b31

2022-04-26 rmistry@google.com [task_scheduler] Call gclient sync with --download-topics

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 file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Tbr: borenet@google.com
Change-Id: Ibf360b4ee7da4f73232280d8084959ed9c9f7c47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534061
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 18:43:32 +00:00
Jordan Williams
cd397f3c47 Add missing include for std::begin and std::end in SkParseColor.cpp
Change-Id: I51f6766271cfcc2dff7fc30e3f7439c4580cbb6a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533981
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-26 17:39:59 +00:00
Kevin Lubick
b11faf5348 Revert "Remove wasm from public.bzl"
This reverts commit fd9804f9a3.

Reason for revert: Still used

Original change's description:
> Remove wasm from public.bzl
>
> See also http://cl/444342647
>
> Bug: skia:12451
> Change-Id: I5f9484b1d023831646243fcfcc2bbb759814293b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533802
> Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>

Bug: skia:12451
Change-Id: I9e8d3af10a3b7b6d1e6fba67f51dbdf5c95e534e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533812
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
2022-04-26 17:28:24 +00:00
Ravi Mistry
72a425bab7 Use download topics in recipe_modules/checkout.
Update depot_tools used by Skia to access the new parameter.

Bug: skia:12967
Change-Id: I577545753e43c88dd89bc28fbad916c6a1bed89e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/532768
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2022-04-26 16:58:31 +00:00
Kevin Lubick
b391fde789 [bazel] Fix typo not caught by Gazelle
The Gazelle extension does not verify the hdr/src name (yet).

Bug: skia:12541
Change-Id: Ibd9fd4663d643e864ccc6977bd3c928f722d6c3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533804
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-26 16:57:12 +00:00
Herb Derby
74666f4b8c Use layers properly in Slug drawing
When drawing the Slug, aboutToDraw was never called resulting
in strange drawing matrices and broken image filters. Call
aboutToDraw in Slug drawing needs to use the initial paint from
the convert call. Store this in the Slug instead of the paint
resulting from aboutToDraw. Plumb the initialPaint and the
paint from aboutToDraw to where they need to go.

Bug: chromium:1302290
Change-Id: Id921aa37bf8ff2ecd21cdcdaad0012a7b90f5322
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533759
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-04-26 15:56:40 +00:00
Kevin Lubick
fd9804f9a3 Remove wasm from public.bzl
See also http://cl/444342647

Bug: skia:12451
Change-Id: I5f9484b1d023831646243fcfcc2bbb759814293b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533802
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
2022-04-26 14:48:50 +00:00
Jorge Betancourt
a2fbd43671 add compiler flags for zlib when building for mac (intel processors)
Change-Id: If62a0ba82fee63bc0e30d946e3aa385eb0970ce7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533678
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2022-04-26 14:41:32 +00:00
John Stiles
a987710a49 Revert "Adjust LSAN_OPTIONS for Vulkan ASAN job"
This reverts commit 82146a7fcd.

Reason for revert: did not add any useful data about the failure

Original change's description:
> Adjust LSAN_OPTIONS for Vulkan ASAN job
>
> Trying to track down an intermittent failure.
>
> Rerun-Tryjobs: true
> Change-Id: Iaa61db90eae72403972fb8262d271c9f6447786f
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533880
> Reviewed-by: John Stiles <johnstiles@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>

Change-Id: I1cc81a09d882c66e6d60b82fc22e454cf5bdddac
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533803
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-04-26 14:25:19 +00:00
skia-autoroll
fc26a86dd8 Roll ANGLE from 2db718edf233 to 9d6b3a7ee45b (16 revisions)
2db718edf2..9d6b3a7ee4

2022-04-26 syoussefi@chromium.org Vulkan: Move overlay draw after swap's implicit flush
2022-04-26 syoussefi@chromium.org Vulkan: Overlay widgets for submission statistics
2022-04-25 m.maiya@samsung.com Vulkan: Add support for GL_QCOM_shading_rate
2022-04-25 aeubanks@google.com Add -Wno-deprecated-non-prototype
2022-04-25 romanl@google.com Replace `adb exec-out cat` with pull to temp location.
2022-04-25 antonio.caggiano@collabora.com Refactor platform code
2022-04-25 m.maiya@samsung.com Vulkan: Add entry points for GL_QCOM_shading_rate
2022-04-25 lexa.knyazev@gmail.com Reland "Fix BlendStateExt::mMaxColorMask initialization"
2022-04-25 romanl@google.com Use adb instead of catapult to run perf tests on Android.
2022-04-25 cnorthrop@google.com Revert "Mark contexts as shared when importing EGL images."
2022-04-25 syoussefi@chromium.org Rename feature files to *_autogen.h
2022-04-25 antonio.caggiano@collabora.com Generalize GetDisplayFromNativeDisplay
2022-04-25 ggabu423@gmail.com Remove observer when element array buffer is detached
2022-04-25 jmadill@chromium.org Update Program Pipeline TODOs.
2022-04-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 71f3089b729c to f13461dbb23c (1 revision)
2022-04-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 01fd48aca427 to f685346e2e51 (6 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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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: bsalomon@google.com
Test: Test: CtsWindowManagerDeviceTestCases
Test: Test: ShadingRateQcomTest*
Change-Id: I0e3a19cc938f8cedd120a3b0b96644607a544e79
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533862
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 13:58:02 +00:00
skia-autoroll
30a5355b75 Roll SwiftShader from f13461dbb23c to 5f5faa3a2aad (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/f13461dbb23c..5f5faa3a2aad

2022-04-26 capn@google.com Delete src/SwiftShader

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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: bsalomon@google.com
Change-Id: I8af12a4fcbee5c25ed64171bb34168625f0fd57b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533865
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 13:10:00 +00:00
skia-autoroll
e499312573 Roll Dawn from 534a353c7c21 to 7b20709d0ea8 (13 revisions)
https://dawn.googlesource.com/dawn.git/+log/534a353c7c21..7b20709d0ea8

2022-04-26 lokokung@google.com Fixes serialization of RenderPassCacheQuery struct.
2022-04-26 bclayton@google.com tint/fuzzers: Build protobufs after remove_stale_autogen_files
2022-04-25 enrico.galli@intel.com D3D12: Indirect validation shader name cleanup and parameter merge
2022-04-25 brandon1.jones@intel.com Add External Texture Gamma/Gamut Correction
2022-04-25 bclayton@google.com GN: Move dawn import into build_with_chromium cond
2022-04-25 bclayton@google.com tools/src/cmd/perfmon: Fixes / improvements
2022-04-25 dsinclair@chromium.org Use the CTS --quiet flag.
2022-04-25 amaiorano@google.com Implement support for Unicode Pattern_White_Space
2022-04-25 rharrison@chromium.org Update Starlark config to use 'main' branch
2022-04-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 2db718edf233 to c95bd5e7e882 (1 revision)
2022-04-25 dsinclair@chromium.org run-cts split output to only colour titles.
2022-04-25 bclayton@google.com Roll third_party/webgpu-cts/ f6b6dd548..501cb3643 (2 commits)
2022-04-25 jiawei.shao@intel.com Don't expose internal buffer usages in error messages

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 bclayton@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Dawn: https://bugs.chromium.org/p/dawn/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: bclayton@google.com
Change-Id: Ic5fe7523d44115aebd334bdeb3c8296843403267
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533864
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 13:08:47 +00:00
skia-autoroll
e153906043 Roll Chromium from afe5a0f01b3b to 2848cc8888b9 (392 revisions)
afe5a0f01b..2848cc8888

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 bsalomon@google.com on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry
To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry

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/main/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
Tbr: bsalomon@google.com
Change-Id: I0e69febdd494a41c96394b06c10e5cd2acd3168f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533863
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-26 13:04:46 +00:00
John Stiles
cea63f4fdf Add support for benchmarking SkVM.
This will allow perf to give us insights on SkVM code generation
performance, so that any regressions are automatically noticed and
trends over time can be observed.

This CL includes three separate benchmarks:
- skvm: Compile SkSL to SkVM with no optimization pass
- skvm_opt: Compile to SkVM and perform optimization/DCE
- skvm_jit: Compile, optimize/DCE, and generate native assembly via JIT

Change-Id: I54ad20d7adb9c5e66d33a2fb761303a269341ff2
Bug: skia:13259
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533957
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-26 13:03:34 +00:00
John Stiles
edef5d0837 Optimize SPIR-V instruction writes.
getType() is super high-traffic, so we need to make sure that we're
avoiding heap allocations by using Words{...} around our op words. This
constructs an SkSTArray<8, Word> instead of just an SkTArray<Word>.

This makes a noticeable difference in optimized performance:
http://screen/zbwLy8xFqfF4CoU

Change-Id: Ic747ae95e02593666c47ba9b80d7c679d51ffa50
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533958
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-26 12:58:23 +00:00
John Stiles
1675ef75cc Update test sksl_large to be ES2 compatible.
SkVM does not support nonconstant array indexing because this is an ES3
feature, but sksl_large was using the ES3-specific looping binary
colorizer for gradients. This prevented SkVM from compiling the
benchmark. sksl_large has been regenerated with
`nonconstantArrayIndexSupport` set to false in the GrShaderCaps.

Change-Id: If706d9544d1bc0d9c49c59c925a517f677262c85
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533956
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-26 12:58:17 +00:00
Brian Osman
82146a7fcd Adjust LSAN_OPTIONS for Vulkan ASAN job
Trying to track down an intermittent failure.

Rerun-Tryjobs: true
Change-Id: Iaa61db90eae72403972fb8262d271c9f6447786f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533880
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-25 23:23:07 +00:00
John Stiles
74742130b0 Update sksl_small benchmark with bitmap-text shader.
Previously, we used the Imgui paint shader. However, it uses a custom
mesh now. This increases its starting size substantially. The bitmap
text shader is a better example of a compact but still functionally-
useful shader.

(I also checked the medium and large shaders; these have not changed at
all since our last update, since Ganesh rarely changes now.)

Change-Id: I8e41aeaf4241d64910bd8188155ba428a6b0dbaa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533879
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-25 21:53:24 +00:00
Arman Uguray
99bd2226fc [ganesh] Make GrGpu::deleteFence non-const
As a virtual method, there isn't a specific reason for deleteFence
to prescribe const-ness onto GrGpu implementations. This function is no
longer declared as const.

Change-Id: I3016769fd7a114e14f7f5b03ba1931e5130e8060
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533757
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-04-25 21:43:14 +00:00
Kevin Lubick
f8e52b27aa [bazel] Use minimal download flag when building on CI
https://bazel.build/reference/command-line-reference#flag--remote_download_minimal

This will hopefully speed up CI builds by a few seconds
because we don't have to copy the builds from the
RBE instances to our machines running the bazel task.

Testing locally, a build with an empty local bazel cache
but warm remote cache took 35 seconds with the status
quo and 13 seconds with the new flag.

Change-Id: I04ba4b0d7ba7864746c52d103be14f4f7b238d39
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533756
Reviewed-by: Erik Rose <erikrose@google.com>
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-04-25 20:29:36 +00:00
Kevin Lubick
ce5ec016e4 Guard GPU parts of ToolUtils
This was breaking:
bazel build //tools/skdiff --config=clang

which does not compile with any GPU backend.

Change-Id: I0f95ebbab6542f7ae5ea8f8a87ea2a5a5d01d993
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/532760
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-04-25 19:30:42 +00:00
Greg Daniel
7dd8c705a5 Reland "Check that the GrBackendFormat of a promise image is textureable."
This is a reland of commit 866bd64c1b

Original change's description:
> Check that the GrBackendFormat of a promise image is textureable.
>
> Bug: chromium:1311844
> Change-Id: I13bae71305ae9520851cd1ea38a1da737b934dd1
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/532196
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

Bug: chromium:1311844
Change-Id: I01e2d0e4eb01ee7d97798db6eeff73fec76bf521
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/532408
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-25 18:53:38 +00:00
Ben Wagner
9cbadcd928 Add optional OT-SVG support to FreeType
Bug: skia:12290
Change-Id: I064bee781d3a714e46f102cb48494fbe8f3e46e8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/516436
Reviewed-by: Florin Malita <fmalita@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-04-25 18:51:01 +00:00
John Stiles
4f33f5bef8 Migrate as_sksl out of skgpu::wangs_formula.
This is only referenced by tessellation code now, so it's been moved to
GrTessellationShader.cpp. (In the near future, we may remove this code
entirely, since it is not very impactful for performance.)

Change-Id: Id0f176220efb3eeed63e08c2c1faa48df07cd124
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533676
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-25 18:19:10 +00:00
John Stiles
3f8fc145ba Migrate middle-out code into Graphite vert module.
This will allow the SkSL compiler to avoid reprocessing it each time
it is used. This reduces the input SkSL for most Graphite vertex
programs to just a few lines of code.

This also deduplicates a lot of identical SkSL between the
TesselateWedges and TesselateCurves render steps.

Change-Id: I697b3284eba1ede8a2643ba9f4d76b699d3fd756
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533576
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-25 17:07:34 +00:00
John Stiles
24d95c7001 Migrate Wang's Formula logic into Graphite vert module.
This will allow the SkSL compiler to avoid reprocessing it each time
it is used.

Unfortunately, Ganesh also uses this code and appears to inject it
directly into GLSL programs (not SkSL), so we can't remove
`wangs_formula::to_sksl` entirely without making significant Ganesh
changes. (We could probably move it into ganesh, though.)

Change-Id: I4468b22f5ef4d19f2afeaff2d6b4fda5cbcfed9b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533399
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-25 17:04:58 +00:00