Commit Graph

55618 Commits

Author SHA1 Message Date
Robert Phillips
fdad22960e [ngatoy] Strictly differentiate between painter's order and the sort/draw Zs
Bug: skia:11837
Change-Id: I038aee81e41201668f891df9d589459553b757b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417259
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-06-10 12:37:39 +00:00
Robert Phillips
1f6ca3a950 [ngatoy] Make an explicit ID class and simplify Cmd class
Bug: skia:11837
Change-Id: I44b8f02555c1ed7e2f1bf0872bf41f78d1eb5d25
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417003
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-10 12:32:20 +00:00
skia-autoroll
2a3fb1baa1 Roll ANGLE from 69f2fb0066e8 to d769742c30c2 (5 revisions)
69f2fb0066..d769742c30

2021-06-10 syoussefi@chromium.org Vulkan: SPIR-V Gen: Default uniforms
2021-06-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 3bcc8fd7c291 to 6c5859c895f5 (510 revisions)
2021-06-09 gert.wollny@collabora.com Capture: Add a specialization for TGLeglImageOES
2021-06-09 pkasting@chromium.org Fix -Wc++11-narrowing in ANGLE.
2021-06-09 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 11d5b8e51262 to 4d0e65d25f37 (13 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 adlai@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: adlai@google.com
Change-Id: Ic6b11c5ad392482580f665d9262e9eb313d376cb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417357
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-10 05:31:09 +00:00
skia-autoroll
843b9ae6c6 Roll SwiftShader from 5ecc95a00e2b to 81ba5f47b66c (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/5ecc95a00e2b..81ba5f47b66c

2021-06-10 srisser@google.com Prevent BC6h decoder from using global constructor

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 adlai@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: adlai@google.com
Change-Id: Ic159b209b694fb456d13917674cd80ada43394fb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417358
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-10 05:05:19 +00:00
skia-autoroll
11dbd875bc Roll Dawn from 9c375faf4cba to f8a0f82fad38 (10 revisions)
https://dawn.googlesource.com/dawn.git/+log/9c375faf4cba..f8a0f82fad38

2021-06-10 enga@chromium.org Move zero-size copy skips from the frontend to the backend
2021-06-10 hao.x.li@intel.com Add invalidExtension in WGPUDeviceProperties
2021-06-09 yunchao.he@intel.com Impl 3DTexture copy splitter for empty first row on D3D12 - 2
2021-06-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 3b267173776b to c58738a49eda (6 revisions)
2021-06-09 bajones@chromium.org ComputePipelineDescriptor.computeStage->compute
2021-06-09 yunchao.he@intel.com Implement copy for 3D texture on D3D12: non-zero mip
2021-06-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 6a7a8b42e84c to 3b267173776b (2 revisions)
2021-06-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from fc645f748969 to 6a7a8b42e84c (3 revisions)
2021-06-09 hao.x.li@intel.com Disallow pipeline statistics query as UnsafeAPIs
2021-06-09 cjj19970505@live.cn Add support for windows SwapChainPanel in SwapChain and Surface

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from fc645f748969 to c58738a49eda

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 jrprice@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: jrprice@google.com
Change-Id: I6754a76c35891f130349eaed3e7a3ee59e2002f7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417302
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-10 04:51:19 +00:00
Chris Dalton
198ac15a90 Reland "Fix tessellation checks for "usesVaryingCoords""
This is a reland of bd727d0620

TBR=jvanverth@google.com

Original change's description:
> Fix tessellation checks for "usesVaryingCoords"
>
> We can't use our hardware tessellation back door if any FPs in the
> program have varyings. Before this CL, we were forgetting to check the
> clip FP for strokes, and weren't checking any FPs yet for fills.
>
> Bug: skia:10419
> Change-Id: Ica631ab3cf0407fb359c02c6d53f88f5f301cddc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417237
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

Bug: skia:10419
Change-Id: If8c1e18efc663641b2d565314110f66a6840f8bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417317
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-09 23:56:29 +00:00
Chris Dalton
7391511f7b Fix compiler error in TessellateBench.cpp
Change-Id: I09cde57375a742355ff4498549fb8f57299f4610
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417316
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2021-06-09 22:30:24 +00:00
John Stiles
50d0d097c3 Add dest-color support to the Pipeline stage.
Previously, when converting a program, the pipeline stage could assume
that an input to main() of type half4/float4 was always the input color.
This was a good assumption since the only possible inputs were
coordinates, or the input color.

This CL now recognizes that when a second float4 is passed to the main()
function, it should be a SK_DEST_COLOR_BUILTIN. This will let blend
functions pass in two colors.

ProgramToSkVM now takes a dest-color argument as well, but existing call
sites won't reference it (since they aren't for blend functions). I've
just passed the input-color a second time, since the value will never
actually be accessed.

Change-Id: I4214586bda605c6d287aa25b1b099e6ef5ba15a4
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417261
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-06-09 22:09:21 +00:00
Jim Van Verth
5d1599f69d Revert "Fix tessellation checks for "usesVaryingCoords""
This reverts commit bd727d0620.

Reason for revert: Breaking builds.

Original change's description:
> Fix tessellation checks for "usesVaryingCoords"
>
> We can't use our hardware tessellation back door if any FPs in the
> program have varyings. Before this CL, we were forgetting to check the
> clip FP for strokes, and weren't checking any FPs yet for fills.
>
> Bug: skia:10419
> Change-Id: Ica631ab3cf0407fb359c02c6d53f88f5f301cddc
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417237
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Chris Dalton <csmartdalton@google.com>

TBR=egdaniel@google.com,csmartdalton@google.com

Change-Id: I30d29f078d7b8cef146463feaaec0883ba5b9872
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:10419
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417265
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2021-06-09 22:09:03 +00:00
Jim Van Verth
d51d62eb09 Fix available check for MTLLanguageVersion
Change-Id: If0fa83a50d149cf456e313553ee43467c9b928a3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417263
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-06-09 21:58:44 +00:00
Brian Osman
a784914e74 Rudimentary SkRuntimeImageFilter
This is really just a runtime shader with a late-bound input.

Bug: skia:12074 chromium:1213217
Change-Id: Ie92650a3e1e03d0c43ce4745eb33d49d582094f5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416476
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-06-09 21:46:24 +00:00
Chris Dalton
9e67891b72 Revert "Wean tessellation off SkPathOps"
This reverts commit 6b2121d0ec.

Reason for revert: Perf regressions:

https://perf.skia.org/t/?begin=1623217407&end=1623217409&subset=all

Original change's description:
> Wean tessellation off SkPathOps
>
> Now that chopping and culling are fully implemented, and the indirect
> tessellators are gone, we don't need to crop huge paths anymore. The
> recursive chopping and culling will just do their thing.
>
> Bug: skia:9795
> Bug: skia:11268
> Bug: chromium:800804
> Change-Id: Ie34920c59af67035cf37eead69c5335693703001
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416080
> Commit-Queue: Chris Dalton <csmartdalton@google.com>
> Reviewed-by: Mike Reed <reed@google.com>

TBR=csmartdalton@google.com,reed@google.com

Change-Id: I265bd6991627b435a2a656cf9080b7e9d17e5ded
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: skia:9795
Bug: skia:11268
Bug: chromium:800804
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417238
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-09 21:44:25 +00:00
Chris Dalton
bd727d0620 Fix tessellation checks for "usesVaryingCoords"
We can't use our hardware tessellation back door if any FPs in the
program have varyings. Before this CL, we were forgetting to check the
clip FP for strokes, and weren't checking any FPs yet for fills.

Bug: skia:10419
Change-Id: Ica631ab3cf0407fb359c02c6d53f88f5f301cddc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417237
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-09 21:38:44 +00:00
Brian Osman
03f1d12b64 Allow image filters to require a translation-only layer transform
Will be used for first version of runtime image filters.

Bug: skia:12074
Change-Id: I2d7fc3af77d5df8182fd3f3d8da888e20ee05b34
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416778
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2021-06-09 21:34:44 +00:00
Michael Ludwig
4f4b5212d5 Don't discard user bounds for transparent-affecting color filters
Bug: skia:12083
Change-Id: I0a51d813666b9c1f978f97db615b072ede020a0d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417257
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-06-09 21:22:44 +00:00
Brian Osman
2815b0389c Reland "Plumb the full dst color info through color filters in SkVM"
This is a reland of 61c7888dfa

Original change's description:
> Plumb the full dst color info through color filters in SkVM
>
> Used in https://skia-review.googlesource.com/c/skia/+/406296
> to evaluate shaders (as children of color filters) correctly.
>
> Change-Id: I2337b062da3fded9e61efe21c6cf74ef08a56753
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416998
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

Change-Id: Ibd4284f714a33a526515b972c9e18c4b15a74d95
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417256
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-06-09 21:02:15 +00:00
Ethan Nicholas
18a100bf4e Removed erroneous check from DSLFunction
Not sure where this paramVars.empty() check came from, but it shouldn't
be there.

Change-Id: I6b31f662a0955a3018e338e08fb246978354f1b2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417260
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-06-09 20:49:44 +00:00
Brian Osman
5b18ba1cc0 Reland "Validate argument types to GrSkSLFP::Make (in debug builds)"
This is a reland of 43c713d5cd

Original change's description:
> Validate argument types to GrSkSLFP::Make (in debug builds)
>
> Change-Id: I399e6b30c85ce19f6af94baca60ac998d9673e61
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416999
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: John Stiles <johnstiles@google.com>

Cq-Include-Trybots: luci.skia.skia.primary:Build-Debian10-GCC-x86_64-Debug-Docker
Change-Id: Ib66690ba1ba2703b53d94a0d3f40b77a11680402
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417199
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-09 19:51:18 +00:00
Florin Malita
8b86811763 Fix skottie_tool build
Should be guarded by the Skottie build flag.

Change-Id: I4e895a3759d19248fe0770dce710a0ef78c780b7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417007
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@google.com>
Auto-Submit: Florin Malita <fmalita@chromium.org>
2021-06-09 19:50:44 +00:00
Ethan Nicholas
b60356169b Switched SkSLSetting over to using StringFragment
Change-Id: Ic089c867f292e47f5f5835f5a90c61d42e50ba07
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417197
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2021-06-09 19:15:33 +00:00
Chris Dalton
d2b8ba3369 Add a fixed-count impl for tessellated wedges
Bug: skia:10419
Change-Id: Ibb5adb581045e98cb636006aa84f792847041ca5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416856
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-09 19:04:14 +00:00
Jim Van Verth
ec10dedc3a Re-enable support for Metal on iOS 10
Change-Id: I16208249405d61af9ec2b974a1a676296cafba79
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417001
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-09 18:33:53 +00:00
Brian Osman
9a9ca5ae4a Revert "Plumb the full dst color info through color filters in SkVM"
This reverts commit 61c7888dfa.

Reason for revert: Unexpected gm diffs

Original change's description:
> Plumb the full dst color info through color filters in SkVM
>
> Used in https://skia-review.googlesource.com/c/skia/+/406296
> to evaluate shaders (as children of color filters) correctly.
>
> Change-Id: I2337b062da3fded9e61efe21c6cf74ef08a56753
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416998
> Reviewed-by: Mike Reed <reed@google.com>
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

TBR=mtklein@google.com,brianosman@google.com,reed@google.com,michaelludwig@google.com

Change-Id: I234282de535017db64c46aba905e54f532596de9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417198
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-06-09 18:05:14 +00:00
Joe Gregorio
3d808f47a3 nanobench should only serialize finite values to JSON.
Bug: skia:12078
Change-Id: Ie4863284c835c5e104886c113daf524eb59b5466
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416700
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2021-06-09 17:57:13 +00:00
Brian Osman
5cde40de53 Revert "Validate argument types to GrSkSLFP::Make (in debug builds)"
This reverts commit 43c713d5cd.

Reason for revert: Debian10 bots

Original change's description:
> Validate argument types to GrSkSLFP::Make (in debug builds)
>
> Change-Id: I399e6b30c85ce19f6af94baca60ac998d9673e61
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416999
> Commit-Queue: Brian Osman <brianosman@google.com>
> Reviewed-by: John Stiles <johnstiles@google.com>

TBR=brianosman@google.com,johnstiles@google.com

Change-Id: I58c45c35cfe7072b01e96967a418cbcc97d3c703
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417196
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-06-09 17:44:24 +00:00
Adlai Holler
2cd060b283 Fix gardening doc heading point size
Change-Id: I5d622d929c8ff358ff41f4d2ebd7c429c9d3f3b0
No-Try: true
Docs-Preview: https://skia.org/?cl=417176
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417176
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Adlai Holler <adlai@google.com>
2021-06-09 17:43:05 +00:00
Adlai Holler
89845cb139 Update Skia gardener doc to mention Flutter Engine Sherriff chat room
Change-Id: Idac150743afd17dbff192df5365a9bc0a0da5bab
No-Try: true
Docs-Preview: https://skia.org/?cl=417056
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417056
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Auto-Submit: Adlai Holler <adlai@google.com>
2021-06-09 17:28:01 +00:00
Ethan Nicholas
d5f9962740 Switched SkSLSection over to use StringFragment
We were previously using String, but there's no reason to not just use
a view.

Change-Id: I49d973f22590d98a2894501d945cfd671220657d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417002
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-09 17:07:49 +00:00
Brian Osman
61c7888dfa Plumb the full dst color info through color filters in SkVM
Used in https://skia-review.googlesource.com/c/skia/+/406296
to evaluate shaders (as children of color filters) correctly.

Change-Id: I2337b062da3fded9e61efe21c6cf74ef08a56753
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416998
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-06-09 16:46:19 +00:00
Ethan Nicholas
9173b3ff9a Fixed constructor signature in skstd::string_view
Prior to this change, creating a string_view from a string was broken.
We would copy the string, take a reference to the copy's characters,
and then drop the copy on the floor, causing a use-after-free.

Change-Id: Ieef05c2df5d64c7993a572f490c7096d02bd22fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417096
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-09 16:27:19 +00:00
Brian Osman
43c713d5cd Validate argument types to GrSkSLFP::Make (in debug builds)
Change-Id: I399e6b30c85ce19f6af94baca60ac998d9673e61
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416999
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
2021-06-09 16:07:49 +00:00
Mike Reed
1d113ed1d9 Remove unreferenced hello world example
Change-Id: Id2f0b65a28424868e1b897688bcd451041698da4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/417000
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2021-06-09 15:41:49 +00:00
Robert Phillips
87b57fa132 Move GetFallbackColorTypeAndFormat to GrCaps
This just reduces the usage of GrSurfaceFillContext

Bug: skia:11837
Change-Id: I0fd0b169dbca24901d22421a4c0f13219c44cb3e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416797
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2021-06-09 15:36:39 +00:00
John Stiles
cb3f56f68f Fix strings in header files.
`constexpr char` arrays in header files generate a separate object in
each translation unit; we should add `inline` to these.

http://go/totw/140#within-a-header-file-beware

Change-Id: I7e2dd8f81053577127e349e9dc4a691e432c2c05
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416780
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2021-06-09 15:12:29 +00:00
Brian Osman
d1b530a785 Convert GrMagnifierEffect to a runtime FP
Change-Id: Ic44d272fff7a5bf8610b2f9b8e6c3270c54a20c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/412957
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2021-06-09 14:46:19 +00:00
Chris Dalton
6b2121d0ec Wean tessellation off SkPathOps
Now that chopping and culling are fully implemented, and the indirect
tessellators are gone, we don't need to crop huge paths anymore. The
recursive chopping and culling will just do their thing.

Bug: skia:9795
Bug: skia:11268
Bug: chromium:800804
Change-Id: Ie34920c59af67035cf37eead69c5335693703001
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416080
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2021-06-09 05:43:28 +00:00
Chris Dalton
e7e5063205 Disable DMSAA on WebGL
Bug: skia:12081
Change-Id: I4f89c1f495538f58b68458b7ee30d22ba354e482
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416684
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Adlai Holler <adlai@google.com>
2021-06-09 05:41:38 +00:00
skia-autoroll
fc5ce773a6 Roll ANGLE from 1ab6d214182b to 69f2fb0066e8 (12 revisions)
1ab6d21418..69f2fb0066

2021-06-08 b.schade@samsung.com Vulkan: Expose OES_geometry_shader extension
2021-06-08 jmadill@chromium.org infra: Reduce sharding on GLES3 GL/Metal tests.
2021-06-08 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support function forward declaration
2021-06-08 syoussefi@chromium.org Translator: Allow invariant on I/O block members
2021-06-08 mark@lunarg.com Vulkan: Fix AGI hierarchy for clear commands
2021-06-08 warty@google.com D3D11 additional context-loss logging
2021-06-08 syoussefi@chromium.org Translator: Validate global qualifier declaration's symbol
2021-06-08 mark@lunarg.com Docs: Update CONTRIBUTORS with LunarG info
2021-06-08 syoussefi@chromium.org Vulkan: SPIR-V Gen: Support initializers in declarations
2021-06-08 syoussefi@chromium.org Use float clamp unconditionally for indirect index clamping
2021-06-08 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 3da42a3a2cd6 to 5ecc95a00e2b (1 revision)
2021-06-08 syoussefi@chromium.org Vulkan: SPIR-V Gen: Basic support for compute shaders

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 adlai@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: adlai@google.com
Test: Test: Manually trigger conditions to test logging.
Test: Test: angle_deqp_khr_gles31_tests --deqp-case=*geometry_shader*
Change-Id: I835186c9f1489ef415bc9849fd021abe317886e8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416936
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-09 05:22:09 +00:00
skia-autoroll
de0b518b81 Roll SwiftShader from 3da42a3a2cd6 to 5ecc95a00e2b (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/3da42a3a2cd6..5ecc95a00e2b

2021-06-08 swiftshader.regress@gmail.com Regres: Update test lists @ 3da42a3a

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 adlai@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: adlai@google.com
Change-Id: Ia9c4419296975ea686eb5cfe355826a85989a7b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416938
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-09 04:54:08 +00:00
skia-autoroll
163cc91242 Roll Dawn from 0f9ea803cc6f to 9c375faf4cba (12 revisions)
https://dawn.googlesource.com/dawn.git/+log/0f9ea803cc6f..9c375faf4cba

2021-06-09 jiawei.shao@intel.com Vulkan: Support creating compute pipeline asynchronously
2021-06-09 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 8abe369bc594 to fc645f748969 (2 revisions)
2021-06-09 hao.x.li@intel.com Disable timestamp query on macOS 10.15 on AMD
2021-06-09 jiawei.shao@intel.com Metal: Support creating compute pipeline asynchronously
2021-06-08 sunnyps@chromium.org Add releaseMutexKey to ExternalImageAccessDescriptorDXGIKeyedMutex
2021-06-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 3a472bc5c242 to 8abe369bc594 (3 revisions)
2021-06-08 brandon1.jones@intel.com Follow-up For ExternalTexture Binding Feedback
2021-06-08 yunchao.he@intel.com Impl 3DTexture copy splitter for empty first row issue on D3D12
2021-06-08 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from edb644c82152 to 3a472bc5c242 (1 revision)
2021-06-08 bclayton@google.com WGSL: Migrate access control to var<>
2021-06-08 hao.x.li@intel.com Resolve TODO in ResolveQuerySet validation
2021-06-08 zhaoming.jiang@intel.com Dump translated HLSL shaders if the toggle enabled

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from edb644c82152 to fc645f748969

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 jrprice@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: jrprice@google.com
Change-Id: I560227a603f137b9560c1c6f3f2a342ba0027beb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416937
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2021-06-09 04:49:08 +00:00
Chris Dalton
031d76b674 Rename GrPathStencilFillOp -> GrPathStencilCoverOp
"Fill" is an overloaded term. Switch to saying "cover", which I
believe is more true to the Redbook terminology anyway.

Bug: skia:10419
Change-Id: I906122c58462ac374b29dcb96e35bb3f86e55b0d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416079
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-06-08 23:33:50 +00:00
Chris Dalton
26666bda75 Replace the indirect patch tessellator with fixed count
Bug: skia:10419
Change-Id: Icb3395565060d736624d03ba1465926bd9188e44
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416078
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
2021-06-08 23:16:50 +00:00
Chris Dalton
917f9193d2 Delete GrPathTessellationShader::OpFlags::kPreferWedges
It doesn't actually help perf to use wedges on the atlas. The atlas
does better with a separate dedicated draw for the triangle fans. Also
renames OpFlags -> PathFlags since we don't use these for stroking.

Bug: skia:10419
Change-Id: I31dab94d7e9469d2bf9975041170da6bc340df78
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416857
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-08 21:33:40 +00:00
Nathaniel Nifong
acdbb1e397 Move reduced shader mode logic outside test macro
Bug: b/187535297

This omission need to follow the same path as https://skia-review.googlesource.com/c/skia/+/415760

Change-Id: I4ef1ec10a79b0280ec6227ebbfa33e959e7b66f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416685
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2021-06-08 21:20:20 +00:00
Chris Dalton
70c21e34ca Refactor middle-out tessellation shader for fixed count
Refactors the middle-out shader in a way that will allow the fixed
count tessellator to easily run Wang's formula and "throw away"
unnecessary triangles by making them empty.

Bug: skia:10419
Change-Id: I86b76cb24ef43ccdbc890f7dfffcda91f8b01a9c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416542
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-08 20:25:59 +00:00
John Stiles
f7f36ae077 Add ProgramKind::kRuntimeBlend for Runtime Blend functions.
Runtime Blend effects always take two input colors--source and
destination--instead of one. This CL adds a new ProgramKind for blend
effects, a new program module (empty for now), and adds a test to
confirm that the signature for blend functions is checked. Currently
these are only accessible via skslc; there's no Runtime Effect API to
create one and the dest color isn't hooked up to anything.

Change-Id: I5272a811d2d76b878cfdf3429efa78c9c8b3fd97
Bug: skia:12080
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416798
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2021-06-08 19:34:39 +00:00
Adlai Holler
29d9f1dd23 Enable reordering on newer Adreno drivers
Verified the hang is fixed on this (pre-release) driver version.

Bug: skia:11935
Change-Id: Ia841dce15da5802e9e3bf036cb1dace73304bb51
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416737
Commit-Queue: Adlai Holler <adlai@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2021-06-08 18:11:06 +00:00
Brian Salomon
3650f6d9e5 Revert "Reland "Reland "Use SkImage_Raster's unique ID to cache textures."""
This reverts commit 10461f3a6a.

Reason for revert: perf regression for tiled draw bitmaps

Each tile gets wrapped in a temp SkImage_Raster. Because each tile is
created from a SkBitmap that represents a subset of a SkPixelRef
the SkImage always gets a new unique id instead of sharing the SkPixelRef's gen id. Thus, with this change we never get a cache
hit since we're using the image rather than the bitmap's id.

Bug: chromium:1216194

Original change's description:
> Reland "Reland "Use SkImage_Raster's unique ID to cache textures.""
>
> Bug: skia:11983
>
> Change-Id: Ib637af99f4abcd427570bd4dda31488fbcb14ab7
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/414876
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:11983
Change-Id: Icc7f38ff568908d439af9060e3b30e44463818c0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416796
Reviewed-by: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2021-06-08 18:07:47 +00:00
Chris Dalton
7ad3aa20c9 Fix DMSAA loads on ES/ANGLE
ES and ANGLE don't support framebuffer blits from single to
multisample. On these platforms we now perform a draw instead.

Bug: skia:12069
Bug: angleproject:6030
Change-Id: Ida0a5e9b556c4715fa63cb98aba185e64c72b28e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/415767
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-08 17:45:46 +00:00
Chris Dalton
89d460f27b Skip the SkRemoteGlyphCache_DrawTextAsDFT test if not supported
Change-Id: I4f4630e5b3af2531871028f75fa99e1e827dea29
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/416762
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2021-06-08 17:36:06 +00:00