Commit Graph

59855 Commits

Author SHA1 Message Date
Herb Derby
3b238ceae9 add a system for building SkCanvas wrappers for testing
This adds a way to build a wrapping canvas for testing that is allowed
to manipulate the internal state of the canvas. It provides a way
to add friends to SkCanvas without having to change SkCanvas.

Change-Id: I40de8b236ba5acff45b3a8f7e440dcf6fa196fcf
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524316
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-03-24 18:11:53 +00:00
Michael Ludwig
f3539b6c47 [graphite] Use SkTDArray in SkPaintParamsKeyBuilder
SkTArray::reset() got rid of any reserved space, so previously we never
actually got to a high-water allocation. Updated the stack to use
SkTDArray just for consistency so we only had to include that instead of
<vector>, too.

Cq-Include-Trybots: luci.skia.skia.primary:Build-Mac-Clang-arm64-Debug-ASAN_Graphite,Build-Mac-Clang-arm64-Debug-Graphite,Build-Mac-Clang-arm64-Debug-Graphite_NoGpu,Build-Mac-Clang-arm64-Debug-iOS_Graphite,Build-Mac-Clang-arm64-Release-Graphite,Build-Mac-Clang-arm64-Release-iOS_Graphite,Build-Mac-Clang-x86_64-Debug-Graphite,Build-Mac-Clang-x86_64-Release-Graphite,Perf-Mac10.15.7-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-Graphite,Perf-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Release-All-Graphite,Test-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Debug-All-ASAN_Graphite,Test-Mac10.15.7-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-Graphite,Test-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Release-All-Graphite,Test-Mac12-Clang-MacBookPro16.2-GPU-IntelIrisPlus-x86_64-Debug-All-Graphite
Change-Id: I94c9a38d0e630c7d7f1a3eeeb85076067e066a2f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524000
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-03-24 16:15:28 +00:00
Herb Derby
6ccc3b0658 extend GPUSink::onDraw with a canvas wrapper function
Change-Id: Id504947e3533c5cf2c9e91de9737959e0440dbec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524317
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-03-24 15:37:17 +00:00
Ben Wagner
dae0b24b21 Remove SK_IGNORE_OUTLINE_OVERLAP_FIX
Users have been updated and this flag is no longer used.

Change-Id: I43442128b13c58059a5257a167075609d62e1570
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524221
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-03-24 15:27:08 +00:00
Robert Phillips
d67d52ec0f [graphite] Connect DrawPass and CommandBuffer levels together for Textures and Samplers
Bug: skia:12701
Change-Id: Ide780f9dac1b92855e634726d261630ef5d017fc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523426
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-24 14:35:38 +00:00
Brian Salomon
8bb0f47c61 Revert "Always apply mipmap sharpening on GPU"
This reverts commit 1aedd5dc11.

Reason for revert: breaking units tests left and right

Original change's description:
> Always apply mipmap sharpening on GPU
>
> Bug: skia:13078
>
> Change-Id: If459a96eba09fb10e967bc364435f79b83fdc1ec
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522099
> Reviewed-by: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:13078
Change-Id: If24ed4782c922347132bf9fc0dac7e8a266540ba
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524296
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-03-24 13:56:27 +00:00
Kevin Lubick
4ccb0ddcc4 Remove unused include in SkRasterPipeline
Change-Id: I477bcadd42e6515bc1a27e282b2285cd17fcf1d7
Bug: skia:13052
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524005
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-24 13:21:09 +00:00
skia-autoroll
fd96fb27a9 Roll ANGLE from b19e662a7f2e to fa5c349dc73c (3 revisions)
b19e662a7f..fa5c349dc7

2022-03-23 ianelliott@google.com Add "use_custom_libcxx = false" to "roll_aosp.sh"
2022-03-23 shrekshao@google.com Revert "Vulkan: Fix invalid access with display texture share group."
2022-03-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 57eca9df5dc5 to ea9806003d9e (4 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 jvanverth@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: jvanverth@google.com
Change-Id: I4d4fd6ed0dca633070450eba9049cb1362b7facb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524138
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-24 05:26:41 +00:00
skia-autoroll
91b860c5fd Roll Dawn from 586eddb0d088 to 1cdea90f7b95 (9 revisions)
https://dawn.googlesource.com/dawn.git/+log/586eddb0d088..1cdea90f7b95

2022-03-24 enga@chromium.org Add CTS telemetry harness support
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 7419f0e26a05 to 1006b06c7d4a (1 revision)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ea9806003d9e to dc3b5e209ef1 (1 revision)
2022-03-23 cwallez@chromium.org Update GN.
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from d9d08aecf4df to 7419f0e26a05 (1 revision)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 706824d837a2 to 09f55382dac4 (2 revisions)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 4cb8d508af01 to e48c829d5baa (4 revisions)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from e07c40af14e1 to d9d08aecf4df (1 revision)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 4f239b7ca119 to ea9806003d9e (3 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from e07c40af14e1 to 1006b06c7d4a

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 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: jrprice@google.com
Change-Id: Idec8aa8fa1a89d9c005894215b468b8d117a02e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524136
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-24 04:46:21 +00:00
Michael Ludwig
9aa9c14ffd [graphite] Send paint depth to GPU
Bug: skia:13086
Change-Id: I5276f44ee4101a05357408a206050a54ced19adc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523428
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-03-24 00:45:35 +00:00
Greg Daniel
faf520c000 [graphite] Move RefCntedCallback to shared gpu file.
Bug: skia:12974
Change-Id: I15b090e2c3346d71ccf45d5f0d306da3f079821e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523996
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-23 21:19:15 +00:00
Michael Ludwig
357881bc95 [graphite] Groups params to RenderStep in DrawGeometry struct
Bug: skia:13086
Change-Id: I0fc3243fb3f3974a32726237358522171ae33c41
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523419
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-03-23 21:13:08 +00:00
Herb Derby
396fa1cea1 divide the slug conversion calls at a better place
Change-Id: I1e7f7b01356582dcb507a2ef768c97df0e02c561
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523999
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-03-23 20:56:55 +00:00
Ethan Nicholas
7183f29125 Added position tracking for SkSL Modifiers
This is needed for accurate error reporting when we start reporting
ranges rather than line numbers.

Change-Id: If465317e04685e91ab7c408d29e82028b5d59d1a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523425
Reviewed-by: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-03-23 20:45:39 +00:00
Jason Simmons
78abc00dab SkParagraph support for variable fonts
Change-Id: Ibfa8e1840b2d2faa859b60dd189342c0411db59a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/516998
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Jason Simmons <jsimmons@google.com>
2022-03-23 20:42:08 +00:00
Brian Salomon
1aedd5dc11 Always apply mipmap sharpening on GPU
Bug: skia:13078

Change-Id: If459a96eba09fb10e967bc364435f79b83fdc1ec
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522099
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-03-23 19:47:39 +00:00
Arman Uguray
098f9a6785 [sksl][test] Disable SkSLPreserveSideEffects_GPU
This test fails on Nvidia GPUs on OpenGL due to an issue that only
affects GLSL. Disabling this test to reduce developer noise until we
have a way to re-enable it more selectively in dm.

Bug: skia:13034,skia:13035
Change-Id: I60e0d976774bd474676380583af24865e88471c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523976
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-03-23 19:36:54 +00:00
Robert Phillips
a7c2d73690 [graphite] Add TextureDataCache
This adds caching and uniquifying of SkTextureDataBlocks to parallel
our treatment of SkUniformDataBlocks.

Bug: skia:12701
Change-Id: Ib4474f48b9048daf4b848ccbb339cb42246f184b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523418
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-23 19:03:21 +00:00
Ben Wagner
7ef299accb Include <algorithm> in FixedCountBufferUtils.h
Some IWYU since clang headers are becoming less lenient.

Bug: b/226311807
Bug: cl/436707135
Change-Id: I1a439c57c0e003204f72b9874c001ff5357cd1a8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523857
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-03-23 17:19:47 +00:00
Greg Daniel
567e97899e Don't hide that we're using OpenGL Angle in GrGLCaps.
This removes the makeNonAngle call. Instead code specifically checks for
angle d3d if needed and GrGLContextInfo::renderer/vendor returns the
angle renderer and vendor if the backend uses opengl angle.

Change-Id: Ida56e99a70eb2c6f46bed0b6951924539d5aebdb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523858
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-23 17:10:14 +00:00
Greg Daniel
88f2ab6da0 Reland "Allow support for msaa BGRA formats in GL."
This is a reland of commit dbc67b7bca

Original change's description:
> Allow support for msaa BGRA formats in GL.
>
> Bug: skia:13065
> Change-Id: I03e1ea815404cf92881125424cae0ae820644301
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521961
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

Bug: skia:13065
Change-Id: I798db76a01b5dfb5e633576553384bbe096d839d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523816
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-23 15:33:40 +00:00
Robert Phillips
51be21eb5a [graphite] Add makeTextureImage call to graphitestart GM
Bug: skia:12701
Change-Id: I8cca9d8ea20ed585d0021e8ea929dc136d699883
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523423
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-23 14:08:33 +00:00
Robert Phillips
e712161086 Add more nVidia driver valgrind suppressions
Change-Id: I10463cf67aec72ac8cfa4ab329fb3ec9c96c70c6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523416
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-23 14:01:04 +00:00
Kevin Lubick
859b3cc132 Remove old sk_float_rsqrt_portable code
Chrome stopped using this code path a while ago, so we can
too https://crrev.com/c/2850938

Change-Id: I45bd04aee928a1c1adebb41b8a9a263a3950c11f
Bug: skia:11861
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523637
Reviewed-by: Brian Salomon <bsalomon@google.com>
2022-03-23 13:14:09 +00:00
Brian Salomon
8bed8855ab Require glSamplerParameterf and glGetFloatv
Bug: skia:13036
Change-Id: I7ac8dc1d9c8fcce195c6102c43ebc28bc293a593
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523430
Auto-Submit: Brian Salomon <bsalomon@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-23 13:07:47 +00:00
skia-autoroll
c18c7cbdfe Roll ANGLE from 730c127102b5 to b19e662a7f2e (12 revisions)
730c127102..b19e662a7f

2022-03-23 ynovikov@chromium.org TransformFeedbackQueryPausedDrawThenResume flaky
2022-03-22 ianelliott@google.com Remove "libcxx_abi_unstable" from "roll_aosp.sh"
2022-03-22 yuxinhu@google.com Vulkan: Fix invalid access with display texture share group.
2022-03-22 ynovikov@chromium.org Roll chromium_revision 3e4963702e..384f873e09 (982601:983904)
2022-03-22 ianelliott@google.com Add back Pixel 6-specific dEQP FAIL suppression
2022-03-22 syoussefi@chromium.org Vulkan: Fix invalidate of attachments with emulated format
2022-03-22 ianelliott@google.com Remove dEQP FAIL expectations for passing tests
2022-03-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 61b4f5b95321 to c4109411d3f3 (7 revisions)
2022-03-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 2f3af2452783 to 57eca9df5dc5 (1 revision)
2022-03-22 gert.wollny@collabora.com Capture/Replay: Enable test that no longer times out
2022-03-22 gert.wollny@collabora.com Capture/Replay: Skip binary IO test without binary formats
2022-03-22 gert.wollny@collabora.com Capture/Replay: Recheck Flaky tests and update expectations

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 jvanverth@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: jvanverth@google.com
Change-Id: I86cba09f9ed7b682ce485004ee2928f055bee99a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523763
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-23 05:32:39 +00:00
skia-autoroll
34372841f8 Roll SwiftShader from 57eca9df5dc5 to ea9806003d9e (4 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/57eca9df5dc5..ea9806003d9e

2022-03-22 sugoi@google.com VK_EXT_private_data support
2022-03-22 sugoi@google.com VK_EXT_private_data promoted structures
2022-03-22 capn@google.com Stop skipping VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT
2022-03-22 ari.suonpaa@siru.fi Restore support for non-uniform indexing of InterpolateAt* input

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 jvanverth@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: jvanverth@google.com
Change-Id: Iba5fc5adf94184ed043704be0113b32eb9159210
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523762
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-23 04:52:18 +00:00
skia-autoroll
3d7c5436df Roll Dawn from a32a3374482a to 586eddb0d088 (7 revisions)
https://dawn.googlesource.com/dawn.git/+log/a32a3374482a..586eddb0d088

2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 3b0013943930 to e07c40af14e1 (6 revisions)
2022-03-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from ebf4c58fa36d to 706824d837a2 (8 revisions)
2022-03-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c4109411d3f3 to 4cb8d508af01 (2 revisions)
2022-03-22 lokokung@google.com Fixes popErrorScope to match the specs.
2022-03-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 57eca9df5dc5 to 4f239b7ca119 (1 revision)
2022-03-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from cb990e40a5c0 to ebf4c58fa36d (10 revisions)
2022-03-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 5af76bbd5b9f to c4109411d3f3 (6 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 3b0013943930 to e07c40af14e1

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 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: jrprice@google.com
Change-Id: Ibc690058f0b6d44b12415bd6b2efb5f8374b483a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523761
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-03-23 04:46:17 +00:00
Greg Daniel
c47a4037c4 Revert "Allow support for msaa BGRA formats in GL."
This reverts commit dbc67b7bca.

Reason for revert: breaking things

Original change's description:
> Allow support for msaa BGRA formats in GL.
>
> Bug: skia:13065
> Change-Id: I03e1ea815404cf92881125424cae0ae820644301
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521961
> Reviewed-by: Brian Salomon <bsalomon@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

Bug: skia:13065
Change-Id: Ic24c7d8873e92de9897e10f85fa10dc44bdd5061
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523737
Auto-Submit: Greg Daniel <egdaniel@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-03-22 23:27:04 +00:00
Greg Daniel
dbc67b7bca Allow support for msaa BGRA formats in GL.
Bug: skia:13065
Change-Id: I03e1ea815404cf92881125424cae0ae820644301
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521961
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-22 22:37:11 +00:00
Herb Derby
399be2e211 update NWay canvas with onDrawSlug
Change-Id: I8b01ecfbbd7295d1109d624b64c162d8e31e18ea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523676
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-03-22 20:59:48 +00:00
Herb Derby
a11e221a13 use the correct size for slug records
Change-Id: I65c42b99119d6f049c4d3ba669b201338ebe31c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523657
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
2022-03-22 20:32:15 +00:00
Herb Derby
2bc9a1a94d rename doDrawSlug to onDrawSlug
Change-Id: Ic88b400f7943804481934ba2c9c54aeb8e04121b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523656
Commit-Queue: Herb Derby <herb@google.com>
Auto-Submit: Herb Derby <herb@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-22 20:20:07 +00:00
John Stiles
c29e37ad4c Rename ES2 error tests 'T' through 'Z' to .rts.
Change-Id: I528d2b7a53748077f2dd7e7e04927d2a6b78ac8f
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523429
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-03-22 19:50:29 +00:00
John Stiles
6424dd02a8 Rename ES2 error tests starting with 'S' to .rts.
Change-Id: I1dd481ca47965e933a110a0f0a8ef7616deb034d
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523417
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-03-22 17:08:16 +00:00
John Stiles
04f8ee3f39 Rename ES2 error tests starting with 'R' to .rts.
Change-Id: Ibd39b45ef57c4e79e444a70aee1901cb33bcfa6a
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523378
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-03-22 17:03:48 +00:00
John Stiles
141f2873a9 Rename ES2 error tests 'O' through 'P' to .rts.
A few tests were divided into a Runtime Effect-compatible .rts test, and
a Runtime Effect-incompatible .sksl test.

Change-Id: Ib52554892685bdc44fe3622ab314960ee0962b90
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523377
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-03-22 17:03:07 +00:00
John Stiles
c5e6515e4a Rename ES2 error tests from 'H' through 'M' to .rts.
In a few cases, this involved splitting a test into two (an ES2-
compatible portion and a ES3+ portion).

Change-Id: Ie6f18f787cf7c10696a2841ff538bbe2b95bf50d
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523187
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-03-22 16:54:32 +00:00
Michael Ludwig
0378307904 Move skgpu::v1-specific [Stroke|Path]Tessellators out of tessellate/
The static functionality for writing vertex buffers, constants, and
utility functions that were in the StrokeTessellator and PathTessellator
classes have been moved into Tessellation.h and a new
FixedCountBufferUtils.h.

The tessellator hierarchy has been moved into src/gpu/ops and all the
v1 guards are removed since they were already solely v1 after the static
functions were lifted out. The hierarchy and subclasses are preserved
but have been combined into just StrokeTessellator.h and
PathTessellator.h instead of separate files for the subclasses.

All the rest of the little changes are updating references and includes.

Bug: skia:13012
Change-Id: I90f2f53538349cf9ad1823a0c42fbdc772190a49
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523189
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-03-22 16:04:13 +00:00
John Stiles
8e3cacfe6a Include the errors/ folder when SkQP searches for SkSL error tests.
Change-Id: I8154f1d7dc92b2026188f9c834bc2d7e2b14a15c
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523188
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2022-03-22 15:45:46 +00:00
John Stiles
49ffe58f40 Assign a position to scopeless Blocks.
The debugger is now more aware of scopeless blocks and treats them as
a combined statement--in particular, individual inner statements of the
scopeless Block are not counted as stopping points when stepping in the
debugger. Only the Block itself is used as a stopping point. This
improves stepping over multiple var-declarations in one statement.

Change-Id: Ic3ab4715cd0158109d8389ea0650b661d3a8b65e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523185
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-03-22 15:41:12 +00:00
Jim Van Verth
54340beba7 [graphite] Add skgpu::Image::onReadPixels.
Creates a new shared routine ReadPixelsHelper used by this and
Device::readPixels(). Also added MakeBitmapProxyView to the
shared file and cleaned up some headers.

Bug: skia:12845
Change-Id: I05533d2f47688daf4f14c8171eb7cd7178b4c0ea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521958
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-03-22 15:37:23 +00:00
Robert Phillips
f8df8d8896 [graphite] Make PipelineDataCache templated
We are going to cache (and uniquify) the UniformBlocks and TextureBlocks
separate from each other.

Bug: skia:12701
Change-Id: I03837c4a38a9bdeb4224a697eab119fca24e8f8c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522916
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-22 14:45:07 +00:00
Kevin Lubick
db95dbe93c [infra] Remove flaky ProcDump jobs
Originally rolled out in https://skia-review.googlesource.com/c/skia/+/113265/
but currently flakes a bit and does not seem to provide any useful data.

Change-Id: Id73e0d4e3b21190a85f0189fd2ed623ceb803e1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523356
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-22 14:20:16 +00:00
Robert Phillips
82c3f91095 [graphite] Fuse texture and sampler binding together
We may re-split this later but, for now, this is simpler.

Bug: skia:12701
Change-Id: Ibb9c6fca8e6ca328c8c203c3b1399b6be7a45425
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522917
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-22 14:12:18 +00:00
John Stiles
872be7ec53 Add missing import for RuntimeShader class.
This appears to be breaking the Android roll: http://screen/8y9uHkRzLssbe4H

Change-Id: Id4f04fdb08eb784d1c74a52d79f8ade268ca949d
Bug: skia:13042
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523376
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2022-03-22 13:52:52 +00:00
Kevin Lubick
14abec45f0 [bazel] Add support for Dawn (via Vulkan)
sk_app has existing support for Dawn on top of Vulkan, and
this adds support to build //example:hello_world_dawn and
get this to run on Linux.

Dawn depends on Tint and abseil-cpp. Tint further depends on
spirv_tools and spirv_headers (for writing to the SPIR-V format).
Dawn and Tint only have GN and CMake support, so we need to make
our Bazel rules for them (see //third_party/BUILD.bazel).

abseil-cpp and the SPIR-V libraries have Bazel support, so we
can just include them (see //WORKSPACE.bazel). It is important
that @spirv_headers be called that exactly because @spirv_tools
depends on it by that name.

The hand-crafted cc_library rules for Dawn and Tint were produced
by reading the appropriate GN files and using the parts necessary
for a supporting Vulkan+Linux. If we use Dawn for other backends
(e.g. WebGPU), we will need to expand the Bazel rules. One day,
we might contribute the Bazel rules to Dawn and Tint so they
can support them and avoid breaking us if new files are added.

Suggested Review Order
 - bazel/common_config_settings/BUILD.bazel to see introduction
   of new select-able option "has_gpu_backend" which cleans up
   some of our code that is enabled for any GPU backend.
 - src/*/BUILD.bazel to see has_gpu_backend rolled out.
 - WORKSPACE.bazel to see DEPS declared there (using the files
   in third_party/externals, which are brought in via
   tools/git-sync-deps).
 - third_party/BUILD.bazel which adds Dawn and Tint rules.
   It may be helpful to look in third_party/externals for
   the Dawn [1] and Tint [2] GN files. Especially interesting
   are the Python scripts [3] Dawn uses to generate some
   header and source files.
 - All other files.

[1] https://dawn.googlesource.com/dawn/+/d9f22ce0346b222759d5510be3d1cd93caa5ab86/src/dawn/native/BUILD.gn#183
[2] https://dawn.googlesource.com/tint/+/453d5ae84ec30ab51ac592c13d472412ae8b5fc9/src/tint/BUILD.gn#174
[3] https://dawn.googlesource.com/dawn/+/d9f22ce0346b222759d5510be3d1cd93caa5ab86/generator/dawn_json_generator.py#774
Change-Id: Ied5b162045d8e841b9666457f0158457e2b078d4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/516996
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-22 13:05:52 +00:00
Kevin Lubick
ffc96dada4 Use non-deprecated Dawn GN targets
Change-Id: I25d583d3542351ae304c6ef93f92c9e02e099f45
Bug: dawn:1275
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522817
Reviewed-by: Greg Daniel <egdaniel@google.com>
2022-03-22 13:05:52 +00:00
Kevin Lubick
06ce3d8942 [infra] Fix timeouts on WebGL GMs+Unit Tests
We were unintentionally trying to run all GMs in 3 minutes
which sometimes took a bit longer. This uses the batch
mode that we use for unit tests too.

Change-Id: Icf9b415881d57772584a16423bdaff14d862c19d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522936
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-03-22 12:42:33 +00:00
Michael Ludwig
0cfacde524 Fix Graphite + SkSL build when SK_SUPPORT_GPU is not defined
See first build failure at https://logs.chromium.org/logs/skia/59b76a7ac5344811/+/steps/ninja/0/stdout

Cq-Include-Trybots: luci.skia.skia.primary:Build-Mac-Clang-arm64-Debug-ASAN_Graphite,Build-Mac-Clang-arm64-Debug-Graphite,Build-Mac-Clang-arm64-Debug-Graphite_NoGpu,Build-Mac-Clang-arm64-Release-Graphite,Build-Mac-Clang-arm64-Debug-iOS_Graphite,Build-Mac-Clang-arm64-Release-iOS_Graphite,Build-Mac-Clang-x86_64-Debug-Graphite,Build-Mac-Clang-x86_64-Release-Graphite,Perf-Mac10.15.7-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-Graphite,Perf-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Release-All-Graphite,Test-Mac10.15.7-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-Graphite,Test-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Debug-All-ASAN_Graphite,Test-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Release-All-Graphite,Test-Mac12-Clang-MacBookPro16.2-GPU-IntelIrisPlus-x86_64-Debug-All-Graphite
Change-Id: Ic1dcde745b1f41acc8cef3e01493a3fca5a873bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522978
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-03-22 12:42:18 +00:00