Commit Graph

54637 Commits

Author SHA1 Message Date
Brian Osman
6860db769b Insert newlines in generated FP constructors
Cleans up registerChild calls, which were all on one long line.

Change-Id: I2b665b033edb88cf1de5e4da433833c0be26c92b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397147
Commit-Queue: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-04-15 19:00:22 +00:00
skia-autoroll
665920e9b9 Roll skcms from 163066c2a041 to a638db877ef8 (1 revision)
https://skia.googlesource.com/skcms.git/+log/163066c2a041..a638db877ef8

2021-04-15 mtklein@google.com require 3 or 4 B2A output channels

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC brianosman@google.com,mtklein@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: luci.chromium.try:linux-blink-rel
Tbr: brianosman@google.com,mtklein@google.com
Change-Id: I4a4834a7a01cf6d4855b40d6da47af6e29f1d11e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397122
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 18:26:22 +00:00
Stephen White
c204e5f765 Dawn: update fences to new API.
Bug: skia:11855
Change-Id: I77ed8b93efb1a9d806f6bec3963c57b7ce16fe4d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397138
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Stephen White <senorblanco@google.com>
2021-04-15 18:04:42 +00:00
Jim Van Verth
eefde6ffcc Clean up D3D12 shader compilation
Adds in printing of shaders and better matches other backends.

Change-Id: Ie2d7bed201e3d0a8d76262ee454632ec46b7e0aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397137
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-15 17:33:24 +00:00
Adlai Holler
b51dd577b9 Add GrResourceAllocator::reset
This is used in the fallback code when reordering produces
a DAG that goes over our memory budget.

Bug: skia:10877
Change-Id: I13772b30e270eb546957b88586ded1cf42d2dbeb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397136
Commit-Queue: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-04-15 17:04:10 +00:00
Adlai Holler
e6f1d8c2df Add a reset method to SkTMultiMap
This will be used as part of GrResourceAllocator::reset which
is coming in a followup CL.

Bug: skia:10877
Change-Id: I16327dd7e470e996891795a443fa665dd58cd54e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397099
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
2021-04-15 17:03:00 +00:00
Jim Van Verth
4d10e4566c Add more support for UAVs and SRV miplevel access
Change-Id: Iefb44f59041c31d45db5c89131f70d6c76376622
Bug: skia:10446
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396158
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-04-15 16:23:30 +00:00
Eric Boren
532b799173 [sk] Add documentation
Change-Id: Ibf8cad25af60f61541ebe064a27d235dceea442b
No-Try: true
Docs-Preview: https://skia.org/docs/dev/tools/sk?cl=397037
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397037
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2021-04-15 16:02:51 +00:00
Chris Dalton
333de882b6 Use fillPixelsWithLocalMatrix in SkBlurMaskFilterImpl::filterMaskGPU
Use fillPixelsWithLocalMatrix instead of drawRect.

Bug: skia:11396
Change-Id: Ibaf64a5c482747d78aa5905f9e561358adcb42f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396556
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-04-15 15:14:29 +00:00
Herb Derby
0b1228d53e put an arena on GrRenderTargetProxy
This is a reland of 5a2de5e72f

This is part one of two CLs. In this CL, I put a
sk_sp<GrArenas> on GrRenderTargetProxy where GrArenas wraps
a SkArenaAlloc to add ref counting. Creating
a GrOpsTask shares the GrArenas with the ops task. When an
GrOpsTask is destroyed, it nulls out the fArenas sk_sp on
the GrRenderTargetProxy to limit the life span of the arenas.

New plumbing was added to GR_DRAW_OP_TEST_DEFINE to allow a
proper GrSurfaceDrawContext to be passed to GrAtlasTextOp's
GR_DRAW_OP_TEST_DEFINE so the arena will have a proper lifetime.

The second CL will work on replacing GrOpsTask's fAllocators
system with the shared arena.

Change-Id: Ieb568e4533c17e31b3b015e7781365d7d898c483
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396818
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2021-04-15 14:37:59 +00:00
Brian Osman
cbb60bd0b0 Add runtime color filter and shader modes to the SkSL compiler
These enforce stricter rules about the signature of main, and each one
uses a separate pre-include module. That prevents color filters from
being able to reference sk_FragCoord (or coords passed to main) at all.
It also limits the versions of sample() that are exposed.

In the new world, an effect created for a specific stage of the Skia
pipeline can only be used to create instances of that stage (SkShader or
SkColorFilter). For now, SkRuntimeEffect::Make uses kRuntimeEffect,
which continues to be more lenient and allow creation of either shaders
or color filters from a single effect. After we migrate all clients, we
can deprecate and then delete that mode.

Bug: skia:11813
Change-Id: I0afd79a72beeec84da42c86146e8fcd8d0e4c09f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/395716
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-15 13:30:59 +00:00
Mike Reed
be834bfa2c Fix up quotes and prototype decl from prev CL
Change-Id: I9546bef4d0bd1232aa1995b59e9a188198fcb75a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396819
Auto-Submit: Mike Reed <reed@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2021-04-15 12:38:29 +00:00
skia-autoroll
804c6ad292 Roll SK Tool from 182db4e6cd1b to e65260dcb444
https://skia.googlesource.com/buildbot.git/+log/182db4e6cd1b..e65260dcb444

2021-04-14 lovisolo@google.com Update BUILD files with Gazelle.
2021-04-14 kjlubick@google.com [gold] Change how ignore rules are applied periodically
2021-04-14 jcgregorio@google.com [docsy] Remove noindex
2021-04-14 borenet@google.com [cipd] Fix inverted file filter logic

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Tbr: jcgregorio@google.com
Change-Id: I455bf33886a972d05e4d044458d83f78ddc3a6da
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397019
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 11:47:49 +00:00
skia-autoroll
3a3d457364 Roll Chromium from 576abd334c74 to b11e0710253c (429 revisions)
576abd334c..b11e071025

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 brianosman@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: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: brianosman@google.com
Change-Id: Id2f806731689ad777537d8ec8b7b59b95887c3fb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396980
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 05:23:59 +00:00
skia-autoroll
0629f7a36b Roll ANGLE from 9e1ccb240f59 to 212849e9323a (5 revisions)
9e1ccb240f..212849e932

2021-04-14 gert.wollny@collabora.com Capture: store some array values as vector
2021-04-14 gert.wollny@collabora.com JsonSerializer: Sort group members before writing them out
2021-04-14 sugoi@google.com Allow Chromecast tests to run on SwANGLE
2021-04-14 lexa.knyazev@gmail.com Upgrade overlay fonts generator to Python 3
2021-04-14 jmadill@chromium.org infra: Remove osx_sdk cache.

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 brianosman@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: brianosman@google.com
Change-Id: Ic18db9e1bbc151c92d8bb439743357f530826bef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396982
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 05:11:49 +00:00
skia-autoroll
82332858cc Roll Dawn from f7d01e07cd84 to e87ea2bedc8b (4 revisions)
https://dawn.googlesource.com/dawn.git/+log/f7d01e07cd84..e87ea2bedc8b

2021-04-14 bajones@chromium.org Update WGSL syntax for end2end tests
2021-04-14 bajones@chromium.org Fix new-style WGSL I/O with OpenGL backend
2021-04-14 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from ebc5bd4e28ea to f8313e5a6e13 (16 revisions)
2021-04-14 rharrison@chromium.org Support enabling/disabling toggles in unittests

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from ebc5bd4e28ea to f8313e5a6e13

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: alanbaker@google.com
Change-Id: Iccd957e5cb14d8f13903421bd9d9bf140a5519aa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/397017
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 04:59:59 +00:00
skia-autoroll
0b7a8b27f2 Roll SwiftShader from b71a5569b879 to f32791f5d53b (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b71a5569b879..f32791f5d53b

2021-04-14 swiftshader.regress@gmail.com Regres: Update test lists @ b71a5569

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: brianosman@google.com
Change-Id: I416a673d2295221c8b04d87d6d58716f14bd1f44
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396981
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-15 04:59:49 +00:00
Greg Daniel
de4bbdb565 Move vulkan external commandbuffer logic from RT to GrVkFramebufer.
Bug: skia:11809
Change-Id: I7fa364f7472be35e02b06fa2f3fbb6d61a427f65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396156
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2021-04-14 21:42:58 +00:00
John Stiles
f1ce6faf29 Fix for loops with multiple init-variables in GLSL.
When a Block is detected in the for loop's init-statement, we now
synthesize a scope and write the init-statement directly above the for
loop and leave the for loop's init-stmt section empty.

Change-Id: I3e89c6a4328a79e49b8a19faae7975629cd0e152
Bug: skia:11860
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396820
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-04-14 21:40:19 +00:00
Chris Dalton
5c5f09bc28 Redirect fillRectWithEdgeAA to fillRectToRect when edgeAA==kAll
Bug: skia:11396
Change-Id: I37e7ed2902171bbf2d6d4aa9a7fd4047f1879758
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396297
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-04-14 21:15:38 +00:00
Chris Dalton
3e4ff84477 Revert GrOpsRenderPass::fUsesMSAASurface
Reverts all changes related to GrOpsRenderPass::fUsesMSAASurface.
These snuck in accidentally on a rebase and were not meant to land.

Change-Id: Idc0d7de6568eed69e705934f9b9d957edb2dd8fd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396724
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-04-14 21:15:18 +00:00
Mike Klein
b91382ef3e remove SkNx::rsqrt()
The instructions used to implement it don't deliever
the same results across processors, even on the same
architecture.

Bug: skia:11861
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: I7831640fa6c0f01540619fce3f509c8969aaaaff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396722
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2021-04-14 20:54:08 +00:00
John Stiles
a36fa6636b Fix for loops with multiple init-variables in Metal.
This is structured differently than the GLSL fix, due to the different
semantics of array-types in Metal.

Change-Id: I27ad11539bbbb96abb0686d5686b8fcd2f5dd6d1
Bug: skia:11860
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396916
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
2021-04-14 20:47:48 +00:00
John Stiles
c5d860877e Add unit test for for-loop with multiple variables.
We lacked test coverage for this case, and this was broken when compound
VarDeclarations were split from one Statement into several.

Change-Id: I561b4d8acc0bfa01161d873a0c022ec58e316903
Bug: skia:11860
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396817
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-04-14 20:23:35 +00:00
Brian Salomon
5a32828e5e No VS specialization for identity or scale/trans in reduced shader mode
Modifies helpers on GrGLSLGeometryProcessor that insert, set, and make
keys for view/local matrix uniforms to not omit the uniform when
the matrix is identity or use a float4 when it is scale/trans. Always
uses a 3x3.

Bug: skia:11844
Change-Id: I0f25b60b46b8932d7e2cac4a50159d22b9cd84d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/395656
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-14 20:09:09 +00:00
Mike Klein
940ec1ca0e remove unused SkNx::invert()
The instructions used to implement it don't deliever
the same results across processors, even on the same
architecture.

Bug: skia:11861
Change-Id: Ifb87fc04a4ec866f84d7c2f2472c7f4b65661d28
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396721
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2021-04-14 19:27:38 +00:00
Mike Reed
b3d14873d4 Demo different sampling options
Requested by blink team

Change-Id: I5b93c330341e8582bfc479bd830bb6dfa3489847
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396198
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2021-04-14 19:17:57 +00:00
Mike Reed
9983b1efd9 Expose drawGlyphs to CK
Precursor for https://skia-review.googlesource.com/c/skia/+/392837

Change-Id: I94cf555d3185e4e2689888a3ae2acf6f57a0fb65
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396496
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2021-04-14 19:15:50 +00:00
Adlai Holler
8e2a8b202c Surface resource cache through cmdline flag
This lets us test out the memory-fallback code in the new
ops task reordering pathway on our bots.

Bug: skia:10877
Change-Id: Ic5662ef68e46b144eb2821687390c858d0056ba1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396157
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Adlai Holler <adlai@google.com>
2021-04-14 18:49:48 +00:00
Stephen White
7bf4145094 Update Skia-Dawn for recent Dawn API changes.
Bug: skia:11855
Change-Id: Iccd1c8a382e3b43f6f51fa05a9352183d49fea66
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396196
Auto-Submit: Stephen White <senorblanco@chromium.org>
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
2021-04-14 18:46:58 +00:00
Brian Salomon
354147a23c Replace GrConstColorProcessor with a runtime FP
Change-Id: Ie36ea4d5186f6cca341efc6300b813ec8255bdbb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/388457
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-14 18:40:18 +00:00
Herb Derby
3c1ed9cbe2 add bounds generation code to SkGlyphRun
Change-Id: I29c269bce86cb50fea57d44d7760b60326aa56a8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396436
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2021-04-14 18:05:18 +00:00
skia-autoroll
ec745c1818 Roll ANGLE from 68f1203d29c9 to 9e1ccb240f59 (9 revisions)
68f1203d29..9e1ccb240f

2021-04-14 jplate@google.com Workaround for missing include in OpenCL headers
2021-04-14 gert.wollny@collabora.com Capture: Fix storing strings instead of scalars
2021-04-14 syoussefi@chromium.org Revert "Roll vulkan-deps from c18d8cd5016c to a441440ae454 (23 revisions)"
2021-04-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c18d8cd5016c to a441440ae454 (23 revisions)
2021-04-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 77edad299907 to f32791f5d53b (3 revisions)
2021-04-14 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from cb430282a083 to 21426fd08f99 (209 revisions)
2021-04-14 cnorthrop@google.com Capture/Replay: Support non-binary GLboolean
2021-04-14 cnorthrop@google.com Capture/Replay: Support glGetQueryiv
2021-04-14 cnorthrop@google.com Capture/Replay: Support glBufferStorageEXT

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 brianosman@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;skia/skia.primary:Build-Win-Clang-arm64-Debug-ANGLE
Tbr: brianosman@google.com
Test: Test: MEC for Dota Underlords
Change-Id: I263c528d83b301cd0a1a0bb346942eb118b0304d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396700
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 17:49:28 +00:00
skia-autoroll
e264ba393d Roll skcms from 411e27776f5c to 163066c2a041 (1 revision)
https://skia.googlesource.com/skcms.git/+log/411e27776f5c..163066c2a041

2021-04-14 mtklein@google.com B2A part 3, turn it on

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/skcms-skia-autoroll
Please CC brianosman@google.com,mtklein@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: luci.chromium.try:linux-blink-rel
Tbr: brianosman@google.com,mtklein@google.com
Change-Id: I629f77a5d49673edef2b1a67318fbcc45ac89225
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396720
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 17:17:58 +00:00
Brian Osman
cdee120180 Cache runtime color filter alpha-unchanged flag on the effect
This reuses the work we're already doing to compute the one-at-a-time
program, and lets us share the result across color filter instances
created from the same effect.

When we added caching of the flag to filter creation, pinpoint found a
performance regression. I expect this to resolve that.

Bug: chromium:1187432
Change-Id: Ie4f8551fa432d298ce950cba8642b9de28f19b81
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396758
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2021-04-14 14:35:28 +00:00
Dominik Röttsches
343c15a8f7 Additional trace events for SVG parse and render operations
Helpful for analyzing SVG parsing vs. rendering time.

Bug: skia:11851
Change-Id: I64e7002de1846e9c426d59382611e6b0902ada09
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396776
Commit-Queue: Dominik Röttsches <drott@google.com>
Commit-Queue: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2021-04-14 14:25:28 +00:00
John Stiles
0a0a50ae97 Use .dsl.cpp suffix for DSL C++ instead of _dsl.cpp.
This requires the GN processing to be slightly more complex, as GN has
no native support for more than one extension on a file.
Context: https://groups.google.com/a/chromium.org/g/gn-dev/c/RdEpjeYtb-4

Change-Id: I630511fca9eb291f0e414481ef439f18a8e1b72f
Bug: skia:11854
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396197
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2021-04-14 13:49:53 +00:00
Dominik Röttsches
4df814c2d6 [COLRv1] Special case a sequence of PaintGlyph + solid/gradient fill
In leaf ends of the COLRv1 DAG, if we encounter a PaintGlyph followed
by PaintSolid or Paint*Gradient, we can use the faster drawPath()
operation rather than the combination of clipPath() + drawPaint().

Special case this sequence in the code to optimize performance.

This improves average COLRv1 glyph drawing performance and makes it
faster than an identical set of SVG glyphs when running the
benchmark from [1] because it removes the clipPath() + drawPaint()
slowdown.

https://skia-review.googlesource.com/c/skia/+/395616.

Fixed: skia:11851
Change-Id: Id7037d40a6326d4792f04c5cc1245601d3706c78
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396237
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2021-04-14 13:45:08 +00:00
Mike Reed
e0f3d612b0 Change GlyphIDArray to 16bit
pre-cl to prepare for more Glyph methods
e.g. https://skia-review.googlesource.com/c/skia/+/396496

Change-Id: I334f9d93ea2183a69f2d9087a783ad7d7277248b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396498
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2021-04-14 13:44:48 +00:00
skia-autoroll
93cb72eefe Roll SK Tool from e08f5bc2712e to 182db4e6cd1b
https://skia.googlesource.com/buildbot.git/+log/e08f5bc2712e..182db4e6cd1b

2021-04-14 borenet@google.com [cipd] Add Client.Create, use in build_and_deploy_cipd

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Tbr: jcgregorio@google.com
Change-Id: I64e33f35c466384da4cf50d5448cab98f7507f74
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396696
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 13:05:48 +00:00
Dominik Röttsches
f37b23d2ef Extract configuring SkPaint from FreeType COLRv1 Paint info
Preparation for special casing the PaintGlyph + solid or
gradient fill case.

No functional changes.

Bug: skia:11851
Change-Id: I689444fb7178bcc9dc91fbb97454d21bf77eb064
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396236
Commit-Queue: Dominik Röttsches <drott@google.com>
Auto-Submit: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2021-04-14 07:44:08 +00:00
skia-autoroll
11b6b59188 Roll Chromium from f9ddd1cf5caa to 576abd334c74 (487 revisions)
f9ddd1cf5c..576abd334c

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 brianosman@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: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: brianosman@google.com
Change-Id: I6ce8cb63b602aa241683026b0b2914236f5ba4e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396616
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 06:02:48 +00:00
skia-autoroll
ff5b669802 Roll ANGLE from 15f4925ac3a6 to 68f1203d29c9 (27 revisions)
15f4925ac3..68f1203d29

2021-04-14 jmadill@chromium.org Disable location tags in test isolates.
2021-04-14 ianelliott@google.com Don't call {begin|end}DebugUtilsLabelEXT() when not enabled
2021-04-14 jmadill@chromium.org Add gclient variable to checkout traces.
2021-04-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from ab36e1e42f00 to cb430282a083 (277 revisions)
2021-04-13 jmadill@chromium.org infra: Remove unused debug/cpu properties from tests.
2021-04-13 gert.wollny@collabora.com FrameCapture: write the float values with high precision
2021-04-13 jonahr@google.com GL: Workaround to sanitize amdgpu renderer strings.
2021-04-13 ynovikov@chromium.org Remove obsolete Linux, Ozone and Fuchsia bots from CQ
2021-04-13 jplate@google.com Migrate CL entry points to libGLESv2
2021-04-13 m.maiya@samsung.com Vulkan: Fix a validation bug in glBeginTransformFeedback
2021-04-13 jmadill@chromium.org infra: Add angle_mb_config.pyl.
2021-04-13 jmadill@chromium.org infra: Move and check gn_isolate_map.
2021-04-13 syoussefi@chromium.org Vulkan: Remove special output of structs and keep them in AST
2021-04-13 geofflang@google.com GL: Support VAOs without native VAOs.
2021-04-13 geofflang@google.com Add the jdk dep when building standalone for Android.
2021-04-13 geofflang@google.com Reland "Vulkan: Add features to modify sampling parameters"
2021-04-13 syoussefi@chromium.org Translator: Track nameless interface block field indices in type
2021-04-13 syoussefi@chromium.org Vulkan: Use AST transformation for gathering default uniforms
2021-04-13 gert.wollny@collabora.com Capture/Replay: Serialize only a hash of the shader binary
2021-04-13 gert.wollny@collabora.com JsonSerializer: add method to store only a hash for vectors
2021-04-13 syoussefi@chromium.org Translator: Validate consistent variable references
2021-04-13 gert.wollny@collabora.com JsonSerializer: Fix rapidjson define usage
2021-04-13 gert.wollny@collabora.com Capture/Replay: Print context diff on failure when verbose
2021-04-13 cheryl.wei@arm.com Skip IOBlocksSeparate xfb test on Linux/ARM/Vulkan
2021-04-13 jplate@google.com Generate CL stubs in libGLESv2
2021-04-13 gert.wollny@collabora.com Capture/Replay: write context serializations on failure
2021-04-13 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 497fa2f8d899 to ab36e1e42f00 (427 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 brianosman@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: brianosman@google.com
Test: Test: ProgramPipelineXFBTest31.VaryingIOBlockSeparableProgramWithXFB*
Change-Id: I7268c1aa03e362b844b65702315f8d37a9fe477a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396617
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 05:01:48 +00:00
skia-autoroll
891500f9bc Roll SwiftShader from 77edad299907 to b71a5569b879 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/77edad299907..b71a5569b879

2021-04-13 srisser@google.com Implement depthBoundsTest
2021-04-13 capn@google.com Eliminate the OpenGL ES 1.1 implementation

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Test-Debian10-Clang-GCE-GPU-SwiftShader-x86_64-Debug-All-SwiftShader
Bug: None
Tbr: brianosman@google.com
Change-Id: I92c8cc9d8f2e491d3a3db732780ad0bfbb60eefb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396537
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 04:53:28 +00:00
skia-autoroll
9ef95bad46 Roll Dawn from e19004566464 to f7d01e07cd84 (8 revisions)
https://dawn.googlesource.com/dawn.git/+log/e19004566464..f7d01e07cd84

2021-04-13 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from c3bbb4d079e4 to ebc5bd4e28ea (3 revisions)
2021-04-13 shrekshao@google.com Remap BindGroup bindingIndex for vulkan backend when using Tint Generator
2021-04-13 jrprice@google.com Update examples for recent WGSL changes
2021-04-13 senorblanco@chromium.org OpenGL: DoTexSubImage() cleanup.
2021-04-13 senorblanco@chromium.org OpenGL: refactor all texture uploads.
2021-04-13 cwallez@chromium.org Remove usage of deprecated WGSL IO in perf/unit/whitebox tests
2021-04-13 cwallez@chromium.org Remove deprecated WGSL "-> void"
2021-04-13 yunchao.he@intel.com Fix a bug about depth/stencil formats validation

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from c3bbb4d079e4 to ebc5bd4e28ea

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

To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/master/autoroll/README.md

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: alanbaker@google.com
Change-Id: I37f9a39634f36cc068bb41b44480e350cb7cf843
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396538
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-04-14 04:53:18 +00:00
John Stiles
82ab3409f7 Fork CPPCodeGenerator into a DSL-based version.
The long term goal is for the DSLCPPCodeGenerator to replace the
CPPCodeGenerator entirely, but we will need both to coexist while DSL is
still under development.

Currently, the DSLCPPCodeGenerator is cloned from CPPCodeGenerator and
emits almost exactly the same code (it adds a comment at the top to
distinguish its output). Its output will change in followup CLs.

This CL also allows skslc to recognize the `_dsl.cpp` output suffix and
generate code using DSLCPPCodeGenerator instead of CPPCodeGenerator.
This allows test DSL FPs to be created for inspection.

Change-Id: If5136279c307ea53a9df3a292caa18344c1eb259
Bug: skia:11854
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396096
Commit-Queue: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-04-13 22:01:09 +00:00
Brian Osman
577c6067a1 Runtime effects: Support input color as a parameter to main()
For now, just bolt this onto the existing runtime effects. The next step
is to add dedicated modes to the compiler for shader vs. color filter.
Once we get there, we will be much more strict about main signature in
each mode (and start adding other per-mode error checking).

Bug: skia:11813
Change-Id: I27e27600209e9844ae107364baea2fb949b47c3f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/395838
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2021-04-13 21:55:18 +00:00
Brian Salomon
785a3262d1 Don't elide GrMatrixEffect if matrix is identity.
This ensures an effect setup code path that calls GrMatrix::Make()
doesn't produce an identity and non-identity shader variant.

Change-Id: I4d17395ed1b5bfd2bf9ceac68e85756c18eb2d2f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396018
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-04-13 20:28:07 +00:00
Brian Osman
8ed8081e0c GrSkSLFP no longer needs a GrContext
Change-Id: Iee1ea7ee2d545138a8243c373f7a163f7120548d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396337
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-04-13 20:00:27 +00:00
Dominik Röttsches
ac04d95061 Factor out COLRv1 transforms to separate function
Preparation for optimizing the case of PaintGlyph + PaintSolid /
PaintGradient so that the remainder of the colrv1_draw_paint() function
can be turned into configuring an SkPaint.

Perform canvas CTM concatenation at the end of the function instead of
in each individual case as before.

No functional changes.

Bug: 11851
Change-Id: I04a77134d406f1625efebd5f623cfdbcca19b7cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/396036
Commit-Queue: Dominik Röttsches <drott@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
2021-04-13 19:59:07 +00:00