Commit Graph

57320 Commits

Author SHA1 Message Date
John Stiles
c6ce617a8a Enable MatrixConstructors test, outside of Quadro P400.
Change-Id: Ie228befa747351445981093f6c57308e338c9684
Bug: skia:12443
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449181
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 19:23:20 +00:00
Jim Van verth
646f693982 Direct3D: recover better from command list submission failure
If a command list failed to submit, it was remaining the current
command list, which put things in an invalid state. This CL
sets things back to something reasonable.

Bug: skia:12359
Change-Id: Ia64d993925999b69eded790358ee0d922bc45bcf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448377
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-09-15 18:51:37 +00:00
Ethan Nicholas
81b7060ef0 Fixed function analysis line numbers with DSLParser
Bug: skia:12412
Change-Id: I0f64e2941a2a87fa49b171a2a3d34517f20b58ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449100
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 18:14:39 +00:00
Jim Van Verth
879224d6a5 Metal: disable use of discardable MSAA on non-Apple silicon.
Resolves appear to be very slow on non-tiled desktop GPUs.

Bug: skia:12447
Change-Id: Ic6fcad667c63cac764fe0ee3d3797159df45d27a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449176
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-09-15 18:14:28 +00:00
Julia Lavrova
8a20cea604 The very first version of a new SkText API.
SkText public API added.
Interface.h updated.

Change-Id: I82a87f33e6cf1394fa2520387f6895d33601376e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/442003
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-09-15 17:57:50 +00:00
John Stiles
4f1593eaee Use swizzles in Metal matrix helper functions.
Not a big deal necessarily, but considering using this logic in GLSL as
well, and I'm less confident that your average GLSL ES driver will
optimize away the separate array loads.

Change-Id: I6a9f0d18c0fac138f64ad6426670f615e17f3492
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449099
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-15 17:32:45 +00:00
Ethan Nicholas
faf8d57fba Reject discard statements in non-fragment DSLParser programs
Bug: skia:12414
Change-Id: I5910239cab20e088367cbb9ededb3211b8b5f3b8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449177
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 17:20:51 +00:00
John Stiles
a047e8bf4d Improve overflow checks in CheckProgramUnrolledSize.
The fuzzer discovered that it could overflow the program-size value.
Rewrote the logic to use SkSafeMath everywhere, and to early-exit as
soon as a statement manages to exceed the program size.

Change-Id: I01511b2201173c95ebc1ac602901410ac9d74d73
Bug: oss-fuzz:38697
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449098
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-09-15 16:42:45 +00:00
Brian Osman
a81e7e2e71 Report an error if sk_LastFragColor is referenced without fbFetchSupport
Adjusted default caps in skslc to be consistent with runtime behavior,
and added optional settings mode to enable the feature. Tests for both
scenarios. (The error test crashed prior to the fix).

Bug: oss-fuzz:38726
Change-Id: I5270d4837ac982085d7baf5abd4b361f7bfb8562
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449062
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-09-15 15:41:49 +00:00
Julia Lavrova
398ef4487b Reland "Reland "Small changes for SkText that are not in experimental directory""
This reverts commit b51994990b.

Reason for revert: Fixed the test

Original change's description:
> Revert "Reland "Small changes for SkText that are not in experimental directory""
>
> This reverts commit ce32c8a074.
>
> Reason for revert: Skottie test is broken
>
> Original change's description:
> > Reland "Small changes for SkText that are not in experimental directory"
> >
> > This reverts commit 481a58dfe0.
> >
> > Reason for revert: Fixing the build
> >
> > Original change's description:
> > > Revert "Small changes for SkText that are not in experimental directory"
> > >
> > > This reverts commit 92f1bc0083.
> > >
> > > Reason for revert: Blocking Android roll.
> > >
> > > Original change's description:
> > > > Small changes for SkText that are not in experimental directory
> > > >
> > > > (also made utf 8<->16 conversion static on SkUnicode)
> > > >
> > > > Change-Id: Ie64d18ad21a35ec10bd0b350fb7887fb78a419d8
> > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448140
> > > > Reviewed-by: Mike Reed <reed@google.com>
> > > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> > >
> > > Change-Id: Ieb9eb0495dddfc0f9e9e74861b24efc0201fd520
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448656
> > > Auto-Submit: Brian Osman <brianosman@google.com>
> > > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> >
> > Change-Id: I1e5859c9dd943c701d4c4e648bdc3e44412eca54
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448676
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> Change-Id: Ib8e5ec05a5555f34106a0ee61878a8199b82bb82
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448897
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Reviewed-by: Florin Malita <fmalita@google.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: I3bc103c0e1c495342a6673e80765b5f26862e8dc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448898
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-09-15 15:31:14 +00:00
Jim Van Verth
42bcfb9c89 Revert "Direct3D: Be sure to set correct heaps for current descriptor tables."
This reverts commit 7e33d95f4f.

Reason for revert: Breaking QuadroP400 Direct3D bots.

Original change's description:
> Direct3D: Be sure to set correct heaps for current descriptor tables.
>
> When binding descriptor tables, their associated heaps need to be bound
> as well. Previously we would bind those heaps when allocating from them.
> However, if we re-use a descriptor table later, its heap may no longer
> be bound. So we need to be sure to bind heaps for the current set.
>
> To avoid unnecessary refs, rather than store a
> sk_sp<GrD3DDescriptorTableManager::Heap> in each descriptor table, we
> only store its ID3D12DescriptorHeap pointer. The Heap only needs to be
> added to the command list once, when it is first used to allocate for
> the current submit.
>
> Bug: skia:12359
> Change-Id: I70018368e4f08bf7757969b9e878b0ff42059486
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448836
> Commit-Queue: Jim Van Verth <jvanverth@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

Bug: skia:12359
Change-Id: Icc7ab446c674e51e51d000717562dfb40c5a46d6
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449063
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-09-15 15:25:11 +00:00
Robert Phillips
de60d7a64d Move more classes to skgpu::v1 namespace
Bug: skia:11837
Change-Id: If0bfb3009693b203b2080a1d43cc3b1865c3ab9e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448274
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-09-15 15:20:24 +00:00
Ethan Nicholas
fd1332f5a7 Reland "Fixed DSL assertion error on source files containing nulls"
This is a reland of db38ad7b14

Original change's description:
> Fixed DSL assertion error on source files containing nulls
>
> The assertion was there to make sure we weren't running off the end of
> the source, but naturally fails in the presence of legitimate embedded
> nulls.
>
> Change-Id: I3b80499e9b182c9ea046c479f35d7a965d548401
> Bug: oss-fuzz:38107
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/447182
> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
> Reviewed-by: John Stiles <johnstiles@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

Bug: oss-fuzz:38107
Change-Id: Idb1a6b7c64d2bb954edadae828d6de808158fd3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448660
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 15:00:23 +00:00
John Stiles
78b84cc76a Fix size calculation of blockless for-loops.
Change-Id: Id6e1d1be276af01ce05777682dde8b58d803aedc
Bug: oss-fuzz:37837
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449097
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-15 14:29:45 +00:00
John Stiles
857c7f9dc5 Add program-too-large test using for loops without blocks.
The fuzzer has discovered a bug in our program size-checking logic; for
loops that immediately contain another for loop (with no block) were not
counting the inner loop's iterations. This allowed it to exceed our
maximum program-size threshold (and time out during SkVM compilation).

This test demonstrates the issue. A followup will fix it.

Change-Id: I3b7d4c8a4f0ed04cf0aba3f1a32fdad7d6d784e7
Bug: oss-fuzz:37837
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449096
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 14:19:00 +00:00
Greg Daniel
8a05251321 Test vkdmsaa on some perf bots.
This adds vkdmsaa config to p400 and g77 bots.

Bug: skia:11809
Change-Id: I31f89b96de1dddeb13b922c465893e94b0a015f4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449057
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-09-15 14:16:44 +00:00
Kevin Lubick
0c5b05c3ab [canvaskit] Roll 0.30.0
Change-Id: Ia990c0537d79256b895348c75ff118253a5af926
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449056
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2021-09-15 13:21:25 +00:00
Ethan Nicholas
b7cb38f87b Reduced usage of optional and wrapper in DSLParser
DSL API changes mean that we no longer need to be so heavy-handed with
wrapping statements and expressions. Not only does this simplify the
code, it's a significant performance improvement.

Change-Id: I26ed9701db8012448b67e1ca16328d4f8f04aa03
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/449037
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 13:10:19 +00:00
Ethan Nicholas
720674e119 Removed unnecessary code from DSLExpression
This ReportErrors call is fairly heavy (we create a lot of expressions)
and no longer appears to be necessary given the error handling changes
elsewhere.

Change-Id: Ib9433e4346104e31e7577d6fe4b10208a277a9ff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448936
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-09-15 12:50:26 +00:00
skia-autoroll
9680fed583 Roll ANGLE from 371542cd1696 to 1ca1589fed63 (7 revisions)
371542cd16..1ca1589fed

2021-09-14 jmadill@chromium.org Give GLES extension bools a vendor suffix.
2021-09-14 jmadill@chromium.org Move capability values from gl::Extensions to gl::Caps.
2021-09-14 syoussefi@chromium.org Vulkan: SPIR-V Gen: Fix precision of findMsb
2021-09-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 7f2c7d18de0c to 40adeaba22a6 (1 revision)
2021-09-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from b089638487b7 to d2cc0410ebf0 (426 revisions)
2021-09-14 gert.wollny@collabora.com Capture/Replay: handle param reading of glGetUniformuiv
2021-09-14 cheryl.wei@arm.com Vulkan: Add a test to triger large VAO dirty bit handling.

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 scroggo@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: scroggo@google.com
Change-Id: I6691eaaa3ca10578e676f7c56a41bf8caf48558b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448958
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-15 06:51:49 +00:00
skia-autoroll
94cf6d29d2 Roll Chromium from 1678eb6a6df9 to a1a22cfaa7ce (452 revisions)
1678eb6a6d..a1a22cfaa7

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 scroggo@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: scroggo@google.com
Change-Id: Ia14039d7f6c8dda9b817082e61f9c5e7aa5723f0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448956
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-15 05:01:18 +00:00
Julia Lavrova
b51994990b Revert "Reland "Small changes for SkText that are not in experimental directory""
This reverts commit ce32c8a074.

Reason for revert: Skottie test is broken

Original change's description:
> Reland "Small changes for SkText that are not in experimental directory"
>
> This reverts commit 481a58dfe0.
>
> Reason for revert: Fixing the build
>
> Original change's description:
> > Revert "Small changes for SkText that are not in experimental directory"
> >
> > This reverts commit 92f1bc0083.
> >
> > Reason for revert: Blocking Android roll.
> >
> > Original change's description:
> > > Small changes for SkText that are not in experimental directory
> > >
> > > (also made utf 8<->16 conversion static on SkUnicode)
> > >
> > > Change-Id: Ie64d18ad21a35ec10bd0b350fb7887fb78a419d8
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448140
> > > Reviewed-by: Mike Reed <reed@google.com>
> > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> >
> > Change-Id: Ieb9eb0495dddfc0f9e9e74861b24efc0201fd520
> > No-Presubmit: true
> > No-Tree-Checks: true
> > No-Try: true
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448656
> > Auto-Submit: Brian Osman <brianosman@google.com>
> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
>
> Change-Id: I1e5859c9dd943c701d4c4e648bdc3e44412eca54
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448676
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: Ib8e5ec05a5555f34106a0ee61878a8199b82bb82
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448897
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-09-14 20:32:02 +00:00
Jim Van verth
7e33d95f4f Direct3D: Be sure to set correct heaps for current descriptor tables.
When binding descriptor tables, their associated heaps need to be bound
as well. Previously we would bind those heaps when allocating from them.
However, if we re-use a descriptor table later, its heap may no longer
be bound. So we need to be sure to bind heaps for the current set.

To avoid unnecessary refs, rather than store a
sk_sp<GrD3DDescriptorTableManager::Heap> in each descriptor table, we
only store its ID3D12DescriptorHeap pointer. The Heap only needs to be
added to the command list once, when it is first used to allocate for
the current submit.

Bug: skia:12359
Change-Id: I70018368e4f08bf7757969b9e878b0ff42059486
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448836
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2021-09-14 19:50:45 +00:00
Greg Daniel
95ea283cd2 Remove neglected fillOptions function from nanobench.
Change-Id: I8d0704a73c80db6729811dc4ec343c409e6a2fb3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448838
Auto-Submit: Greg Daniel <egdaniel@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-09-14 19:49:03 +00:00
John Stiles
727adfea3f Optimize zero-splats inside of loops in SkVMCodeGenerator.
Previously, we had various loops which would synthesize a `splat(0)`
instruction on every iteration of the loop. This was harmless and was
already deduplicated by SkVM internally, but in a long loop, this
deduplication process could occur many many times in a row. This hurts
performance needlessly. In particular, for-loops can run for thousands
of iterations in a row, so the savings here can be substantial.

This was inspired by investigation into oss-fuzz:37837.

Change-Id: I247d9ec397418a65219930e2f2b8cf977354bddd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448837
Commit-Queue: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-14 19:18:48 +00:00
Robert Phillips
9d23d9bc00 Disallow GrColorType::kUnknown as colorType in v1::SurfaceDrawContext factory
We're being stricter in V2 wrt this. This CL is an experiment to see if this fallback is actually relied on.

Change-Id: Id19a4ef3e98ee41a94ed2817a06966b87e2ef522
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448267
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-09-14 19:10:26 +00:00
John Stiles
b701fa0ac0 Add non-square MatrixCompMult support to public SkSL in ES3 mode.
We already had a test case here, but it wasn't actually in operation.
The test has been split into ES2 (square) and ES3 (non-square) halves,
returns the color like a proper runtime effect, and it's now running in
dm.

Also, Metal doesn't natively support matrixCompMult, so it injects a
helper function; I tweaked the helper so it no longer requires an extra
result variable.

Change-Id: Ie79242768966fcbe879ad73461d17b4fb8e55670
Bug: skia:12202
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448117
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-14 18:15:23 +00:00
skia-autoroll
d2e486d6ed Roll SK Tool from git_revision:a369a738f282c9a7931692220c7244151e4d7b03 to c92e3a3bedee
https://skia.googlesource.com/buildbot.git/+log/git_revision:a369a738f282c9a7931692220c7244151e4d7b03..c92e3a3bedee

2021-09-14 kjlubick@google.com [tmm] Add support for talking to ChromeOS over SSH.
2021-09-14 kjlubick@google.com [gold] Remove ingestion-bt
2021-09-14 kjlubick@google.com [gold] Deploy frontend w/o BT or firestore
2021-09-14 kjlubick@google.com [tmm] Removed unused ADB mock
2021-09-13 kjlubick@google.com [gold] Remove useOldAPI from frontend.
2021-09-13 kjlubick@google.com [gold] Remove v1 API RPC handlers
2021-09-13 kjlubick@google.com [machine] Use TimeTravelCtx in tests
2021-09-13 borenet@google.com [status] Fix blamelist commit link in task details dialog
2021-09-13 borenet@google.com [autoroll] Switch vulkan-headers -> vulkan-deps roller master -> main
2021-09-13 borenet@google.com [autoroll] Remove v8 -> chromium LTS roller
2021-09-10 bungeman@google.com Replace win10-blink-rel with win10.20h2-blink-rel
2021-09-10 kjlubick@google.com [gold] Update images
2021-09-10 borenet@google.com [vpython] Re-enable rolls of vpython
2021-09-10 kjlubick@google.com [gold] Clean up some TODOs in digests-details and triage-sk
2021-09-10 kjlubick@google.com [gold] Add tooltips to triage elements
2021-09-10 kjlubick@google.com [gold] Expand chrome commit window to 1024
2021-09-10 kjlubick@google.com [machines] Properly check for missing dimensions
2021-09-10 jcgregorio@google.com Remove the last vestiges of k3s, skolo management via kubernetes.
2021-09-10 kjlubick@google.com [machine] Remove nested fields

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 erikrose@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: erikrose@google.com
Change-Id: Ic5fb45eae7ff48aa0e473633358b83b63c4912fe
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448799
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-14 18:10:49 +00:00
John Stiles
143e850237 Fix Metal row/column confusion, again.
We didn't have any tests which exercised the non-square matrix case
(because such a test requires ES3), so it was silently broken. It's
now fixed. The tests exposed a DIFFERENT Quadro P400 bug which will be
fixed separately.

Change-Id: Icf24acad5ea6f18aea3d8aa5a903e7bea41a5c23
Bug: skia:12443
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448379
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-09-14 17:06:48 +00:00
Joe Gregorio
4ff44eff1c Turn down Galaxy S6 devices.
We are down to only one working device.
Replacement devices are being discussed.

Change-Id: I74ef94360daaf0e901ddf094b9141d525e52878c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448696
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2021-09-14 15:04:43 +00:00
Brian Osman
e76530dbdd Replace DSL's Sample() with DSLGlobalVar::eval()
Bug: skia:12302
Change-Id: I7ff7bae388c5991f2c23c8945355fea55c42095a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/447436
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-09-14 14:54:03 +00:00
Julia Lavrova
ce32c8a074 Reland "Small changes for SkText that are not in experimental directory"
This reverts commit 481a58dfe0.

Reason for revert: Fixing the build

Original change's description:
> Revert "Small changes for SkText that are not in experimental directory"
>
> This reverts commit 92f1bc0083.
>
> Reason for revert: Blocking Android roll.
>
> Original change's description:
> > Small changes for SkText that are not in experimental directory
> >
> > (also made utf 8<->16 conversion static on SkUnicode)
> >
> > Change-Id: Ie64d18ad21a35ec10bd0b350fb7887fb78a419d8
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448140
> > Reviewed-by: Mike Reed <reed@google.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> Change-Id: Ieb9eb0495dddfc0f9e9e74861b24efc0201fd520
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448656
> Auto-Submit: Brian Osman <brianosman@google.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>

Change-Id: I1e5859c9dd943c701d4c4e648bdc3e44412eca54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448676
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2021-09-14 14:30:22 +00:00
Jim Van Verth
8d9e313db8 Set Metal minimum version for iOS to 9.0.
Flutter uses a minimum deployment version of 9.0, and we keep breaking
their roll with unguarded features. This will help catch those sooner.

Change-Id: Idd98b2ac985c36f5c793ff27b5a4b59014875ee5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448257
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Erik Rose <erikrose@google.com>
2021-09-14 14:20:48 +00:00
Brian Osman
eae4ad9bc0 Remove SkSL sample() intrinsic for Skia object types
Bug: skia:12302
Change-Id: Ifc107ca2cf13c1daa59521b93fe4ad1d3c215258
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/447297
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-09-14 14:18:03 +00:00
Robert Phillips
778d6e002d Start fleshing out skgpu::v2 Device and SurfaceDrawContext
Bug: skia:11837
Change-Id: I42ad29e3b5765a81ef9366ebdf1e95739cd90b78
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/445297
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-09-14 14:09:13 +00:00
Ethan Nicholas
6c302ba099 Eliminated unnecessary arrays in DSLParser variable declarations
Change-Id: Ia14371ef3bb83928f6ee93120bcc29de9db6c020
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448269
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-09-14 14:00:54 +00:00
Kevin Lubick
76172f9ed8 [infra] Roll Swiftshader to fix fuzz bug
Change-Id: If1616d5204d5474be51d1890437542c3ab69bb23
Bug: oss-fuzz:38346
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448577
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-09-14 13:37:18 +00:00
Greg Daniel
2bc96d6771 Merge GrVkAttachment into GrVkImage.
Bug: skia:12402
Change-Id: I743724f66db8d7666d4d627d6945ce6bc3dc6bc3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448261
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-09-14 13:34:17 +00:00
Brian Osman
481a58dfe0 Revert "Small changes for SkText that are not in experimental directory"
This reverts commit 92f1bc0083.

Reason for revert: Blocking Android roll.

Original change's description:
> Small changes for SkText that are not in experimental directory
>
> (also made utf 8<->16 conversion static on SkUnicode)
>
> Change-Id: Ie64d18ad21a35ec10bd0b350fb7887fb78a419d8
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448140
> Reviewed-by: Mike Reed <reed@google.com>
> Commit-Queue: Julia Lavrova <jlavrova@google.com>

Change-Id: Ieb9eb0495dddfc0f9e9e74861b24efc0201fd520
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448656
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2021-09-14 13:27:19 +00:00
John Stiles
7d19065eef Add test of off-kilter matrix constructors.
This exposes a bug in the Metal code generator which will be resolved
in a followup CL.

Change-Id: If073835dbee474ea9a805eb92b42dc1fca2afbd0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448378
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-09-14 13:01:26 +00:00
skia-autoroll
a31021db2b Roll Chromium from 74365f584962 to 1678eb6a6df9 (428 revisions)
74365f5849..1678eb6a6d

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 scroggo@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: scroggo@google.com
Change-Id: I68d926517c549b9118d482316b1073dc0c8266fb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448476
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-14 06:33:49 +00:00
skia-autoroll
15d5996a18 Roll ANGLE from 8b2fd983e61a to 371542cd1696 (45 revisions)
8b2fd983e6..371542cd16

2021-09-14 syoussefi@chromium.org Vulkan: Use VK_EXT_load_store_op_none
2021-09-14 cclao@google.com Vulkan: Reformat staged buffer data using CPU
2021-09-13 cclao@google.com Reland "GL: Relax the assertion to exclude BoundAsAttachment bit"
2021-09-13 cclao@google.com Revert "GL: Relax the assertion to exclude BoundAsAttachment bit"
2021-09-13 hailinzhang@google.com delete a wrong comment
2021-09-13 hailinzhang@email.com fix a EXT_buffer_storage issue.
2021-09-13 cnorthrop@google.com FrameCapture: Add ES 3.1 Vertex Attrib MEC support
2021-09-13 cclao@google.com GL: Relax the assertion to exclude BoundAsAttachment bit
2021-09-13 jmadill@chromium.org Capture/Replay: Capture trace file list to JSON.
2021-09-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 446e61c24b37 to 7f2c7d18de0c (3 revisions)
2021-09-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 6aa22be0c26f to b089638487b7 (525 revisions)
2021-09-12 cnorthrop@google.com Vulkan: Suppress CoreValidation-Shader-InterfaceTypeMismatch
2021-09-11 gman@chromium.org nullptr_t to std::nullptr_t
2021-09-10 jmadill@chromium.org Capture/Replay Tests: Script cleanups.
2021-09-10 jmadill@chromium.org Perf Tests: Output results in "msBestFitFormat" again.
2021-09-10 jmadill@chromium.org JsonSerializer: Allow adding values to root node.
2021-09-10 gman@chromium.org Fix ConvertUnsupportedConstructorsToFunctionCalls
2021-09-10 jmadill@chromium.org Gold Tests: Append "show all results" to triage links.
2021-09-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 35209220317c to 446e61c24b37 (1 revision)
2021-09-10 gman@chromium.org Move IntermRebuild.h/cpp to tree_util
2021-09-10 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 5d40b790bf31 to 6aa22be0c26f (470 revisions)
2021-09-10 ynovikov@chromium.org Suppress dEQP GLES3 failures on Mac Intel UHD 630
2021-09-10 cclao@google.com Vulkan: Add warning when a fallback texture format is used.
2021-09-10 jmadill@chromium.org Capture/Replay: Fix GN build when JSON not available.
2021-09-09 syoussefi@chromium.org Translator: Fix assert in ScalarizeVecAndMatConstructorArgs
2021-09-09 jmadill@chromium.org Capture/Replay Tests: Allow 3 concurrent ninja processes.
2021-09-09 jmadill@chromium.org Capture/Replay: Mark one test as flaky.
2021-09-09 ynovikov@chromium.org Add standalone experimental Mac Intel and AMD bots
2021-09-09 gman@chromium.org Don't advertize GL_APPLE_clip_distance on direct metal
2021-09-09 timvp@google.com Capture/Replay: Remove debug logging
2021-09-09 jmadill@chromium.org Capture/Replay: Remove unused function in header.
2021-09-09 lubosz.sarnecki@collabora.com Tests: Add Blockman Go trace.
2021-09-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 83556eae921f to 35209220317c (1 revision)
2021-09-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 3ce06be375f3 to 5d40b790bf31 (538 revisions)
2021-09-08 cclao@google.com Vulkan: Make vk::Format from struct to class
2021-09-08 b.schade@samsung.com Add Entry points for GL_EXT_EGL_image_storage
2021-09-08 cclao@google.com Vulkan: Avoid texture format fallback when possible
2021-09-08 gman@chromium.org Fix AST validation error with gl_FragCoord
2021-09-08 geofflang@google.com GL: Temporarily disable MSRTT on Android.
2021-09-08 gman@chromium.org Only rewrite constructors for scalars/vectors/matrices
2021-09-08 sunnyps@chromium.org d3d11: Allow binding R/RG texture to EGLImage
2021-09-08 jmadill@chromium.org Change links from 'master' to 'main' branch.
2021-09-08 jmadill@chromium.org Trace Tests: Fix test data path.
2021-09-08 timvp@google.com Capture/Replay: Disable world_of_kings for Win+Intel
2021-09-08 jmadill@chromium.org Capture/Replay: Serialize trace metadata to a JSON file.

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 scroggo@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: scroggo@google.com
Test: Test: Fortnite MEC
Test: Test: angle_perftests --gtest_filter="*blockman_go*"
Change-Id: Ifb2c71c565eadc87b16c824a276f8ad2bc154ee8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448479
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-14 05:25:17 +00:00
skia-autoroll
24a1891314 Roll SwiftShader from 7f2c7d18de0c to 40adeaba22a6 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/7f2c7d18de0c..40adeaba22a6

2021-09-13 sugoi@google.com Add derived class for every type of external memory

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 scroggo@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: scroggo@google.com
Change-Id: Ia330d5694a8a6b3756114d2e63c99326f140583a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448478
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-14 05:12:17 +00:00
skia-autoroll
c3e7cadc10 Roll Dawn from 42448dafb484 to 96ac969a33de (8 revisions)
https://dawn.googlesource.com/dawn.git/+log/42448dafb484..96ac969a33de

2021-09-14 jie.a.chen@intel.com Use WGPU_ARRAY_LAYER_COUNT_UNDEFINED instead of 0
2021-09-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from de767b18421c to 7f4d02c7aba7 (2 revisions)
2021-09-14 bajones@chromium.org Disable multiple mip levels for r8/rg8unorm textures on Metal
2021-09-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from f66f65137448 to de767b18421c (6 revisions)
2021-09-13 bsheedy@google.com Suppress Mac 11.5 failure
2021-09-13 enga@chromium.org Add validation, storage, and querying of limits
2021-09-13 bryan.bernhart@intel.com Disable remap binding test on WARP.
2021-09-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 2ebcb93cb36c to f66f65137448 (1 revision)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 2ebcb93cb36c to 7f4d02c7aba7

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 shrekshao@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: shrekshao@google.com
Change-Id: Ib56da65e47484c7447df5f563e71221a80c0a343
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448477
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-09-14 04:40:22 +00:00
Jim Van verth
eab246d6f4 Direct3D: Don't use ResolveSubresourceRegion if it's not supported.
On the Intel Iris Pro 580 this is failing, and causing command list
issues.

Bug: skia:12359
Change-Id: I4de1d89eaa4668983cfa3290aef13bd1ef940187
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448376
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-09-13 21:56:19 +00:00
Brian Salomon
ae59426ea6 Revert "New approach to GrProcessor uniforms."
This reverts commit 10c9f36bdd.

Reason for revert:bad gms, maybe blocking chrome roll

Original change's description:
> New approach to GrProcessor uniforms.
>
> The important aspect is that it allows knowing the uniforms that will
> be used by a set of processors without having to create ProgramImpls.
>
> GrProcessor subclasses specify uniforms at creation time in a similar
> style to how GrGeometryProcessors already specify attributes. That is,
> they initialize a span of structs describing the uniform which may
> contain void uniforms that are skipped. Unlike attributes, the struct
> contains an offset into the processor where the data is stored.
>
> GrUniformAggregator is used to collect the uniforms from all processors
> that compose a draw and mangle their names. The ProgramImpl subclasses
> query the aggregator for their uniform names when emitting code.
>
> The old system for uniforms is left intact and only three processors,
> one GP, one FP, and one XP, are updated to use the new system.
>
> Some pieces that are missing before everything can be moved over:
> -support for uniforms not owned by GrProcessor (e.g. rt-adjust)
> -support for samplers
> -helpers for common patterns
>  (e.g. GrGeometryProcessor::ProgramImpl::setupUniformColor(),
>   and the various matrix helpers on ProgramImpl)
>
> Bug: skia:12182
>
> Change-Id: I21c1b7a8940eb9b8aad003f5a2569e43977a33d2
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/440841
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:12182
Change-Id: I6cc508900a599d27124f8ba48597593192d5d807
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448418
Auto-Submit: Brian Salomon <bsalomon@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2021-09-13 21:22:16 +00:00
Herb Derby
85dde4e315 add benchmarks for bilerp study
Change-Id: I6e69a902cc660154b56a82cae727751ec6f5e806
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448273
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2021-09-13 21:14:18 +00:00
John Stiles
31e4845422 Add const to lexer lookup tables.
While browsing with bloaty-treemap, I found that these were not marked
as const. This pessimizes us a bit (e.g. the memory pages need to be
treated as writable)

This has the effect of moving about 16K from __data into __TEXT,__const.

Change-Id: I9816a8d8f2a92777cbde719db5129bb7f9bc2ea4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448263
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-09-13 20:50:57 +00:00
Brian Salomon
10c9f36bdd New approach to GrProcessor uniforms.
The important aspect is that it allows knowing the uniforms that will
be used by a set of processors without having to create ProgramImpls.

GrProcessor subclasses specify uniforms at creation time in a similar
style to how GrGeometryProcessors already specify attributes. That is,
they initialize a span of structs describing the uniform which may
contain void uniforms that are skipped. Unlike attributes, the struct
contains an offset into the processor where the data is stored.

GrUniformAggregator is used to collect the uniforms from all processors
that compose a draw and mangle their names. The ProgramImpl subclasses
query the aggregator for their uniform names when emitting code.

The old system for uniforms is left intact and only three processors,
one GP, one FP, and one XP, are updated to use the new system.

Some pieces that are missing before everything can be moved over:
-support for uniforms not owned by GrProcessor (e.g. rt-adjust)
-support for samplers
-helpers for common patterns
 (e.g. GrGeometryProcessor::ProgramImpl::setupUniformColor(),
  and the various matrix helpers on ProgramImpl)

Bug: skia:12182

Change-Id: I21c1b7a8940eb9b8aad003f5a2569e43977a33d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/440841
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-09-13 19:55:06 +00:00
Mike Reed
b1559f2acd drawPoints with maskfilter fix
Fix: just check for maskfilter, and reject fast-cases if we have one.

New GM: points_maskfilter

before: draw red squares with no blurs, but red circles had blurs

after: both sets have the blur (i.e. the maskfilter)

Bug: skia:12435
Change-Id: I460908818d2edf8c6065db2fe99a9df0e7ffc543
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/448266
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2021-09-13 19:22:35 +00:00