Commit Graph

59382 Commits

Author SHA1 Message Date
Kevin Lubick
b902658a1a [bazel] Fix Bazel build by guarding addToKey
PS1 is the automatic regenerated changes.
PS2-3 adds an #ifdef guard to the addToKey method on shaders.
The SkShaderCodeDictionary class helps generate SkSL and is
only necessary when we are building with SkSL (gpu builds and
cpu builds with SkVM).

Suggested Review order:
 - Use Gerrit to diff PS 1 and the last PS
 - src/core/BUILD.bazel adds some sources to the "only
   necessary if sksl is enabled" bucket
 - All the .cpp and .h files to see the #ifdef is added
   correctly.

Change-Id: I4d4ce61a4957ef1e0840204acff08ce7e616f9cb
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512157
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-02-24 18:10:40 +00:00
Herb Derby
0b2a5b9a03 plumb PackedGlyphID for path serialization
The packedGlyphID is needed to create a serialized form for
PathSubRuns.

+ param alignments.

Change-Id: Idc48e44c46078330434e36f1e972884388a10bd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512718
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-24 17:12:43 +00:00
skia-autoroll
a83b8c6a78 Roll ANGLE from 5f3f13f698cf to ad462491fbfe (11 revisions)
5f3f13f698..ad462491fb

2022-02-16 kbr@chromium.org Refine suppression for GLSLTest.SwizzledChainedAssignIncrement.
2022-02-16 jmadill@chromium.org Vulkan: Add uniform descriptor set caching test.
2022-02-16 kpiddington@apple.com Fix UpdateChromeANGLE on mac for debug angle
2022-02-16 syoussefi@chromium.org Vulkan: Fix D/S invalidation for MSAA EGL configs
2022-02-16 jmadill@chromium.org Roll Chromium DEPS manually.
2022-02-16 jmadill@chromium.org Update docs for checkout with 'fetch' tool.
2022-02-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 956ca5369840 to 9fb91023eb58 (10 revisions)
2022-02-16 lubosz.sarnecki@collabora.com validationESEXT: Implement ValidateGetCompressedTexImageANGLE.
2022-02-16 lubosz.sarnecki@collabora.com vk_helpers: Adjust CopyImageToBuffer extent to block size.
2022-02-16 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 5f1c00bda1c1 to 13f7365e81be (5 revisions)
2022-02-16 lubosz.sarnecki@collabora.com TextureVk: Implement getCompressedTexImage.

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 erikrose@google.com,michaelludwig@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: erikrose@google.com,michaelludwig@google.com
Test: Test: angle_end2end_tests --gtest_filter="GetImageTest*.CompressedTexImage*"
Test: Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageCubeMap*"
Test: Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageNegativeAPI*"
Test: Test: angle_end2end_tests --gtest_filter="GetImageTest.CompressedTexImageNotBlockMultiple*"
Test: Test: angle_end2end_tests --gtest_filter="GetImageTestES32.CompressedTexImageCubeMapArray*"
Change-Id: Ibf74ff29903f0899312c47c909fdfd36f5ce3e89
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512756
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-24 16:53:09 +00:00
Robert Phillips
6fb25f140e [graphite] Fix blend shader's data block expectations
The functionality of these two CLs collided:

https://skia-review.googlesource.com/c/skia/+/508678 ([graphite] Add structure to SkPaintParamsKey data payload)
https://skia-review.googlesource.com/c/skia/+/510227 ([graphite] Add blendMode uniform to blend/compose shader)

Resulting in the blend/compose shader keys not providing all the expected data.

Bug: skia:12701
Change-Id: Ic5c288f2b2c965902b6d613e10c7f9c352e6f766
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512721
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-24 16:39:03 +00:00
Herb Derby
5cbaf7b1a6 serialize/deserialize SDFTSubRun
This CL is mainly about SDFTSubRun serialization,
but there are some renaming refactoring, small code
cleanups.

Bug: chromium:1278340

Change-Id: I2f14521c25014979afff5a5b09fb34bb62e3cda0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512556
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-24 15:17:00 +00:00
John Stiles
2c70a0f96b Reland "Remove skstd::optional entirely."
This is a reland of 0596094b81

Original change's description:
> Remove skstd::optional entirely.
>
> Change-Id: Id9862712ea3e769797abd654922879ce6bc4487c
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/504976
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>

Change-Id: Ie5bae44de729aabe50c4e51ad3c7cc476fbc5dc6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512358
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-02-24 15:12:43 +00:00
Kevin Lubick
32b1e5d861 Revert "[includes] Remove include link between SkPathRef.h and SkRRect.h"
This reverts commit 37b8239bec.

Reason for revert: Need to update clients, including Flutter

Original change's description:
> [includes] Remove include link between SkPathRef.h and SkRRect.h
>
> According to go/chrome-includes [1], this will save about
> 40MB (0.02%) off the Chrome build. http://screen/4GnPjFaYpwCVHVL
>
> I'm not quite sure why the link is so expensive, but we can
> forward declare it and move the implementation from the .h
> to the .cpp file easily enough.
>
> [1] https://commondatastorage.googleapis.com/chromium-browser-clang/include-analysis.html#view=edges&filter=%5Ethird_party%2Fskia%2Finclude%2Fprivate%2FSkPathRef%5C.h%24&sort=includes&reverse=&includer=%5Ethird_party%2Fskia%2Finclude%2Fprivate%2FSkPathRef%5C.h%24&included=&limit=1000
>
> Canary-Chromium-CL: 3485346
> Change-Id: Ie3a5e7a735426f883a6c06ddbd3b8bf148bf1709
> Bug: 242216
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512158
> Reviewed-by: Robert Phillips <robertphillips@google.com>

Bug: 242216
Change-Id: I226c45326b67dff3eb1dc1f96c11e9ef0a12e22b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512639
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-02-24 12:55:26 +00:00
skia-autoroll
74b244c06e Roll ANGLE from e5045587752d to 5f3f13f698cf (15 revisions)
e504558775..5f3f13f698

2022-02-16 syoussefi@chromium.org Vulkan: Invalidate D/S for multisampled EGL configs too
2022-02-16 kpiddington@apple.com Metal: Incorrect parenthization for assignment expressions
2022-02-15 gman@chromium.org Metal: Fix Hang in WebGL CTS Occlusionquery_strict test
2022-02-15 steven@valvesoftware.com Vulkan: replace uniforms FastIntegerMap with FastUnorderedMap
2022-02-15 m.maiya@samsung.com Vulkan: Check Serial is valid in SyncHelperNativeFence
2022-02-15 cnorthrop@google.com Python3 upgrades
2022-02-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 2d1377ec02b5 to 834c2e16ae1c (1 revision)
2022-02-15 srisser@google.com Don't expose detailed driver version info to webGL
2022-02-15 sergiyb@chromium.org Remove reference to policy_testserver.py
2022-02-15 cnorthrop@google.com Tests: Add State of Survival trace
2022-02-15 vadimsh@google.com [infra] Update active lucicfg experiments.
2022-02-15 m.maiya@samsung.com Vulkan: Retain images before changeLayoutAndQueue
2022-02-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from cbd31d271e4c to 5f1c00bda1c1 (12 revisions)
2022-02-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3a6f074dbd38 to 956ca5369840 (55 revisions)
2022-02-15 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from c9825531290b to d984ec3b132a (580 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 fmalita@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: fmalita@google.com
Test: Test: EGLSyncTest.AndroidNativeFence_*
Test: Test: angle_perftests --gtest_filter="*state_of_survival*"
Change-Id: If7b2a7c0d2342f134b3315ce1ba351540b5a1493
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509619
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-24 08:00:16 +00:00
skia-autoroll
939f71eff1 Roll SwiftShader from 7529468c7902 to cd8e0282137f (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/7529468c7902..cd8e0282137f

2022-02-23 sugoi@google.com VK_KHR_shader_non_semantic_info support
2022-02-23 swiftshader.regress@gmail.com Regres: Update test lists @ 7529468c

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 erikrose@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: erikrose@google.com
Change-Id: I33da8cd480e0e704d1466283df52782f806ada27
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512608
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-24 04:47:11 +00:00
skia-autoroll
4627bfae68 Roll Dawn from bf44da52b98e to 6084407b212f (11 revisions)
https://dawn.googlesource.com/dawn.git/+log/bf44da52b98e..6084407b212f

2022-02-24 shaobo.yan@intel.com Change texture state validation in CopyTextureForBrowser() to report meaningful errors
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 223a25f0133d to 1e773db9070e (5 revisions)
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 02187240ae97 to fa0208dc5d37 (5 revisions)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 8169693136dd to fe08ba467747 (2 revisions)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from df3630c19476 to 8169693136dd (3 revisions)
2022-02-23 hao.x.li@intel.com Add toggle to disable the tick->ns conversion of timestamp query
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 7529468c7902 to 57d90a68ba40 (1 revision)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from f8672d8c359f to df3630c19476 (1 revision)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c8d440b173d7 to 02187240ae97 (1 revision)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from b80635caaac3 to 223a25f0133d (4 revisions)
2022-02-23 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 1fcb2a7a24ec to f8672d8c359f (2 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from 1fcb2a7a24ec to fe08ba467747

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

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

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

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: shrekshao@google.com
Change-Id: I2aff142b42411bd28d9fac3b7d490aad8fd14ec1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512607
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-24 04:39:09 +00:00
Leandro Lovisolo
efdc2c5b87 gen_tasks_logic.go: Update Win10 tasks's "os" dimension to "Windows-10-19044".
I've updated almost all Win10 Skolo machines to 19044. https://chromium-swarm.appspot.com/botlist?c=id&c=task&c=os&d=asc&f=os%3AWindows&f=os%3AWindows-10&f=pool%3ASkia&f=zone%3Aus-skolo&s=os.

This CL should get the Angle roller unstuck, and any other tasks that currently cannot be scheduled due to lack of capacity.

Context: Some Win10 Skolo machines self-updated from Windows-10-19041 to Windows-10-19043, which prevented some tasks from running due to lack of capacity (the "os" dimension of those tasks is currently "Windows-10-19041"). The solution I went with is to update all those machines to the latest Windows 10 version, then update the "os" dimension of Win10 tasks to match that OS version.

Change-Id: I94dfeb68f04bdddeff29387f2c2bc7049464e543
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509727
Auto-Submit: Leandro Lovisolo <lovisolo@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-02-24 01:54:56 +00:00
Kevin Lubick
37b8239bec [includes] Remove include link between SkPathRef.h and SkRRect.h
According to go/chrome-includes [1], this will save about
40MB (0.02%) off the Chrome build. http://screen/4GnPjFaYpwCVHVL

I'm not quite sure why the link is so expensive, but we can
forward declare it and move the implementation from the .h
to the .cpp file easily enough.

[1] https://commondatastorage.googleapis.com/chromium-browser-clang/include-analysis.html#view=edges&filter=%5Ethird_party%2Fskia%2Finclude%2Fprivate%2FSkPathRef%5C.h%24&sort=includes&reverse=&includer=%5Ethird_party%2Fskia%2Finclude%2Fprivate%2FSkPathRef%5C.h%24&included=&limit=1000

Canary-Chromium-CL: 3485346
Change-Id: Ie3a5e7a735426f883a6c06ddbd3b8bf148bf1709
Bug: 242216
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512158
Reviewed-by: Robert Phillips <robertphillips@google.com>
2022-02-23 22:46:44 +00:00
Herb Derby
96df1183ac serialize/deserialize TransformedMaskSubRuns
Add serialize and Deserialize to TransformedMaskSubRuns.

Bug: chromium:1278340

Change-Id: Ic4fd89c5e0eef8d79a4bbb43367bd2456feb38c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512148
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-23 21:12:11 +00:00
Robert Phillips
24f02a3e35 [graphite] Move backend specification into the SkPaintParamsBuilder
This should reduce any possibility of keys being built w/ mixed backend snippets. The decision of which backend the key is being created for is made once, when the builder is created.

Bug: skia:12701
Change-Id: I070330627450501eb93ed98271659e1441aaa935
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511804
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-23 20:18:09 +00:00
Herb Derby
635da1dc85 use validate for checking in DirectMask deserialize
I'm going through and fixing up all the code to use validate
before I know about its use.

Change-Id: Iac6a58f925e79ab38e3614ab5e6276bed3e7fc76
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512155
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-23 20:12:46 +00:00
Nathaniel Nifong
b8cb2f4476 2nd Reland "Add defines to skqp build"
Change-Id: Ia4c5e818be529ca765673266f64f96bf41a15552
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512146
Auto-Submit: Nathaniel Nifong <nifong@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2022-02-23 20:06:44 +00:00
Jorge Betancourt
19b722d8d7 remove now unused CorrectnessActivity in Skottie android app
This is an old activity that generates a 5x5 film strip of lottie animations on Android devices.
While unlikely, if this removal breaks something, it will most likely be in our lottie gold instance.

Change-Id: I2d3f6b81b2e5481ed0ae581d2fd86e4e61020e54
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512154
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Jorge Betancourt <jmbetancourt@google.com>
2022-02-23 20:05:48 +00:00
Herb Derby
802549877a clean up TransformedMaskSubRun for serialization
Clean up some names, have the ctor take a TransformedMaskVertexFiller.
This will smooth things out for the serialization code.

Change-Id: I04607b2460509eae6676060c0cfa440069ae808f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512152
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-23 19:59:10 +00:00
Kevin Lubick
e1c79a9189 [canvaskit] Add legacy drawvertices mode to npm build
Should help with https://github.com/flutter/flutter/issues/98531
until Flutter removes c25fd021ed/gn/flutter_defines.gni (L17)

Change-Id: I151c17dbea969b787fb785b999f9d760ae3b25ea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511976
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Yegor Jbanov <yjbanov@google.com>
2022-02-23 19:38:18 +00:00
Robert Phillips
64f3f988e4 [graphite] Add structure to SkPaintParamsKey data payload
Right now this just checks the creation of the key in debug. In follow up CLs we will pass the data payload to the glue code.

The additional key structure also obviates the need for the block-specific Dump methods.

Bug: skia:12701
Change-Id: Ieddea596de92a4f6b3cf6003f33d7f01d3d28c20
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508678
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-23 19:07:52 +00:00
Ben Wagner
1fb32bb4cd Provide current color to all CoreText color glyphs
While `CPAL` glyphs may explicitly use the current foreground color,
`sbix` glyphs may also need the current foreground color to be correct.
If a font with an `sbix` table contains glyphs with paths but without
an entry in the `sbix` table the glyph may be drawn from the path.
However, it is not possible to know when this might occur with the
current CoreText API, so it is necessary for correctness to provide the
current foreground color for `sbix` fonts as well.

This is actually quite wasteful as it means caching `sbix` glyphs on a
per-current foreground color basis. However, usually the current
foreground color isn't changing for these fonts.

Change-Id: I1c95820d981d463fde673966b31c2c47ab2f3292
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512147
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
2022-02-23 19:00:50 +00:00
Harry Terkelsen
fe13e83056 Touch up CanvasKit build
Change-Id: I7ea4428787c69b4045a234403d8ca33c2aff2b7d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511876
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-02-23 18:58:40 +00:00
Evgenii Stepanov
3ec010334e Fix use-after-dtor in SkCanvas.
SkCanvas::fMCStack uses SkCanvas::fMCRecStorage for storage, and will
access it in the destructor. Reorder the fields so that fMCStack is destroyed
before fMCRecStorage.
Change-Id: Ie09b9b52820d2dec4b75552dc5c2349b845a01ef
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509536
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2022-02-23 18:55:52 +00:00
Herb Derby
041157848b clean up for Device::drawGlyphRunList
Clean up drawGlyphRunList suggested in a previous CL. The main
serialized strikes, and serialized Slugs is getting large. So,
I broke it up.

Change-Id: I1d116bcf3b28d95e31b4eec7666c0856cea54a48
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512159
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-23 18:55:38 +00:00
Brian Osman
fe6cca4958 Add SK_BUILD_FOR_DEBUGGER define when compiling WASM SKP debugger
Change-Id: Ib9ade4c80595716c4c2f9ef803decfe3c7726f68
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512142
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Nathaniel Nifong <nifong@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-23 18:50:28 +00:00
skia-autoroll
a99d9671ff Roll SwiftShader from b8d7deae87a7 to 7529468c7902 (5 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/b8d7deae87a7..7529468c7902

2022-02-22 capn@google.com Exhaustively test the log2 implementation's conformance
2022-02-22 capn@google.com Assert exp2 is exact at integer values
2022-02-22 capn@google.com Make inc() flush subnormals to zero when DAZ is enabled
2022-02-22 sugoi@google.com Fix dynamic rendering with multiview
2022-02-22 swiftshader.regress@gmail.com Regres: Update test lists @ b8d7deae

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 erikrose@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: erikrose@google.com
Change-Id: I9ea1ee5ad929bdb78cb902345c6ddeb3da4e5e5d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512117
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-23 18:50:25 +00:00
skia-autoroll
2146d45a11 Roll Dawn from 35faf22cf07f to bf44da52b98e (5 revisions)
https://dawn.googlesource.com/dawn.git/+log/35faf22cf07f..bf44da52b98e

2022-02-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from 16d5739b7337 to 1fcb2a7a24ec (1 revision)
2022-02-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from ad48e4f3534c to c8d440b173d7 (6 revisions)
2022-02-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 3645f3bd40d8 to 7529468c7902 (6 revisions)
2022-02-22 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from c4494a52a20a to b80635caaac3 (5 revisions)
2022-02-22 rharrison@chromium.org Roll third_party/tint/ aa58a6934..16d5739b7 (1 commit)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from aa58a6934c27 to 1fcb2a7a24ec

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

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

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

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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn
Bug: None
Tbr: shrekshao@google.com
Change-Id: I65eb06d724019b5ec853e7c45c5b6def54d067e6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512116
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-23 18:45:11 +00:00
Jim Van Verth
8b53da2b37 Avoid catastrophic cancellation when computing det for QuadUVMatrix
With data with large values we can get into situations where clearly
degenerate quads are not giving a zero determinant, because of
errors when computing the additions and subtractions in sequence.
The solution is to compute the subtractions first, and then add them
together.

Bug: oss-fuzz:41445
Change-Id: I7febead4b020e11a137f1703b761af70c14e4e47
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511796
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-02-23 18:45:08 +00:00
Matt Turner
a8689e3d4d Give a human-intelligible message if gn generates a warning
If gn generates an otherwise harmless warning, find_headers.py will fail
to parse the gn-generated JSON because gn prints both the warning and
the JSON to stdout. Though find_headers.py prints the output of gn if
JSON parsing fails, a human investigating this failure is likely to
assume that the warning they see is from the build system, not from
find_headers.py, and is not related to the failure.

For example, this warning about an argument which has no effect breaks
the build:

    WARNING at build arg file (use "gn args <out_dir>" to edit):36:36: Build argument has no effect.
    skia_skqp_global_error_tolerance = 8
                                       ^
    [...]

Change-Id: Iafa7252ba161e4def1438f5d9480b64fdaa887d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510536
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-23 18:40:03 +00:00
Matt Turner
9f26069e76 [skqp] Call gpuSetup() from SkQP::evaluateGM()
gpuSetup() is responsible for calling skiagm::onGpuSetup() which is
responsible for initializing compressed images used in the following
SkQP tests:

- gl_compressed_textures
- gl_compressed_textures_nmof
- gl_compressed_textures_npot
- gles_compressed_textures
- gles_compressed_textures_nmof
- gles_compressed_textures_npot
- vk_compressed_textures
- vk_compressed_textures_nmof
- vk_compressed_textures_npot

Without this patch each of these tests crash. I suspect these tests were
broken by commit a84caa3a5f ("Make some GMs compatible with the *ooprddl
configs").

Change-Id: Iae864996b9b171084c8ceb5374765d510ff56b49
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510056
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-23 18:40:00 +00:00
Kevin Lubick
6d26915ceb [infra] Remove windows job from CQ due to capacity issues
Change-Id: I51d3f94bcb483e6e3de6f54a2e10683b0ea6d3d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512162
Reviewed-by: Robert Phillips <robertphillips@google.com>
Reviewed-by: Erik Rose <erikrose@google.com>
2022-02-23 18:39:47 +00:00
Robert Phillips
99ba004574 [graphite] Add blendMode uniform to blend/compose shader
Bug: skia:12701
Change-Id: I648948875a2e9401c0c73cdf4c9c8053c9ba69af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510227
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-02-23 18:21:05 +00:00
John Stiles
ac374fad55 Remove unused #includes from SkSLString.
These weren't used and added complexity to the dependency graph.

Change-Id: I7e97d73d520b7123e534485d7840538d6b468c48
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512145
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-02-23 16:27:09 +00:00
Kevin Lubick
bf4b034027 [bazel] Show CanvasKit can be loaded in POC karma_test
In order to load CanvasKit, we need to add support for statically
served files. On the karma side, this is done by adding an
object [1] to the files list (example: [2]).

Then, we need to include canvaskit.js in with the karma test
files and use the callback to load canvaskit.wasm from the
correct file location.

[1] http://karma-runner.github.io/6.3/config/files.html
[2] 4f7b656012/modules/canvaskit/karma.conf.js (L13)
Change-Id: I7482d6e949a5e8efd0ca882efe5afbe0dc16c0e4
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510736
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-02-23 14:53:01 +00:00
Kevin Lubick
a2d3958e1f [bazel] Make custom karma_test rule
Run the tests in headless mode and output the logs
bazel test :hello_world --test_output=all

Start up a visible web browser with the karma test driver
(need to go to Debug tab to actually run tests)
bazel run :hello_world

Suggested review order
 - package.json to see the karma dependencies to run
   jasmine tests on chrome and firefox.
 - WORKSPACE.bazel to see how the packages listed in
   package.json and package-lock.json are downloaded
   into the Bazel sandbox/cache via the npm_install rule.
   As mentioned in the package.json comment, the version
   of build_bazel_rules_nodejs which emscripten uses [1]
   is 4.4.1 and if we tried to install it ourselves, that
   installation will be ignored. We also bring in hermetic
   browsers via io_bazel_rules_webtesting.
 - bazel/karma_test.bzl which defines a new rule _karma_test
   and a macro karma_test which joins the new rule with
   an existing web_test rule to run it on a hermetic browser
   which Bazel downloads. This rule takes heavy inspiration
   from @bazel/concatjs [2], but is much simpler and lets us
   configure more things (e.g. proxies, so we can work with
   test_on_env).
 - karma.bazel.js, which is a pretty ordinary looking karma
   configuration file [2] with effectively a JS macro
   BAZEL_APPLY_SETTINGS. JS doesn't have a preprocessor or
   actual macros, but this string will be replaced by the
   JS code in karma_test.bzl which will set correct filepaths
   for Bazel content.
 - All other files.

[1] c33c7be17f/bazel/deps.bzl (L10)
[2] 700b7a3c5f/packages/concatjs/web_test/karma_web_test.bzl (L318)
[3] http://karma-runner.github.io/6.3/config/configuration-file.html
Change-Id: Id64c0a86d6be37d627762cef0beaaf23ad390ac1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509717
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-02-23 14:53:01 +00:00
Leon Scroggins
4ae863ba8a Revert "Reland "Add defines to skqp build""
This reverts commit 2ceed56917.

Reason for revert: Still breaking android

Original change's description:
> Reland "Add defines to skqp build"
>
> Change-Id: Ic038e6e3279eda7994cf29d886bee0d4d2e69e0b
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511802
> Reviewed-by: Leon Scroggins <scroggo@google.com>
> Commit-Queue: Nathaniel Nifong <nifong@google.com>

Change-Id: Ic93e9e9cedac2fd7313681f44ba4e87ff1b91241
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512156
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
2022-02-23 13:51:18 +00:00
Brian Osman
1e420a3652 Revert "Fix dithering on drawImage[Rect] calls"
This reverts commit 10241484aa.

Reason for revert: Speculative revert for b/220676062

Original change's description:
> Fix dithering on drawImage[Rect] calls
>
> Bug: skia:12516
> Change-Id: Ibb68558e0f474143df3c6a5fb0fb3d4881529226
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508677
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

Bug: skia:12516
Change-Id: If496c6be355bbb026ffe478512f8a6334116bb66
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511806
Commit-Queue: Brian Osman <brianosman@google.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-02-22 23:17:20 +00:00
Brian Osman
fd1f1b3503 Revert "Don't dither const shaders that don't have a GP override"
This reverts commit 05a4b12dbd.

Reason for revert: Speculative fix for b/220676062

Original change's description:
> Don't dither const shaders that don't have a GP override
>
> https://gold.skia.org/detail?test=gradients_no_texture&digest=008c796df4da7fbb6718e96db2c36c90
>
> If paintFP was only non-null because it came from the main SkShader, we
> should defer to SkPaintPriv's check that the shader is not a constant.
> We don't have a isConstant() for FPs so this assumes that if the GP
> overrides it with a new FP it probably is doing something spatially
> interesting and does need the dithering.
>
> Bug: skia:12516
> Change-Id: I7935ba8f0baf91e7b7ba07280452871c60ffd3e8
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/509996
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>
> Auto-Submit: Michael Ludwig <michaelludwig@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>

Bug: skia:12516
Change-Id: I9c45f457d42cd5890cc110617e1636ffa6669503
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511807
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-22 23:11:40 +00:00
Nathaniel Nifong
2ceed56917 Reland "Add defines to skqp build"
Change-Id: Ic038e6e3279eda7994cf29d886bee0d4d2e69e0b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511802
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-22 22:06:12 +00:00
Arthur Eubanks
59de321c10 Add #include <algorithm> to SkTArray.h
SkTArray.h uses std::max() which is part of <algorithm>.
Some libc++ changes have stopped exporting <algorithm> from certain headers, causing skia to break with ToT libc++.

2e2f3158c6

Change-Id: Iee4e00b3b3a6cbe2c1881453d05c0658e95a767b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512016
Commit-Queue: Arthur Eubanks <aeubanks@google.com>
Auto-Submit: Arthur Eubanks <aeubanks@google.com>
Reviewed-by: Erik Rose <erikrose@google.com>
Commit-Queue: Erik Rose <erikrose@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2022-02-22 21:52:15 +00:00
Greg Daniel
9608bbe95a [graphite] Initialze bound buffer tracking in render encoder.
Change-Id: I682e6cd5e02b7b43740c51caf59451da9e789a75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511799
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-02-22 21:23:15 +00:00
Leon Scroggins
debfdffe08 Revert "Add defines to skqp build"
This reverts commit 5637705cea.

Reason for revert: Breaking the Android roll

Original change's description:
> Add defines to skqp build
>
> Change-Id: I35f312045937ab2486084524d4ed32bc305524e3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510856
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Nathaniel Nifong <nifong@google.com>

Change-Id: Ia20c56238a651df2aa758dc2c99f67c32067deb4
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511800
Auto-Submit: Leon Scroggins <scroggo@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-02-22 20:38:08 +00:00
Herb Derby
98209f67c0 additional serialize(void*, size_t) to match SkTextBlob
Add serialize(void*, size_t) to mirror the SkTextBlob serialization
methods.

Bug: chromium:1278340

Change-Id: Ie3868d882263a0ec8833d4c9404e7410d30ac6ae
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511798
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-22 19:36:40 +00:00
Herb Derby
c25fd021ed change to serialize/Deserialize API
Switch to using the public API similar to SkTextBlob for
serialize/Deserialize. Add deserializeSlug to SkStrikeClient.

Bug: chromium:1278340

Change-Id: I91b93487859c662e3bfdfba49ba4758f13529cd9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511601
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-22 19:03:49 +00:00
Julia Lavrova
0861eaf302 Fixing getRectForRange in case with ellipsis
Bug: skia:510084
Change-Id: I49cd012676347f298cce885827546a781698ba97
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510857
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2022-02-22 18:43:20 +00:00
Herb Derby
5c2a0f7907 improve GrGlyphVector::MakeFromBuffer's error checking
This fixes a build bot problem. Because this is run with
--nonativeFonts, we are building a descriptor that can't be
turned into a strike. Make failure to find the strike return
an error instead of asserting.

In addition, use the proper code idiom for checking condition in
other parts of the code.

Change-Id: I3fc4051bf93e8f5308ac55bebd4218c04b5a6620
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511797
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-22 18:05:40 +00:00
Ben Wagner
da1de8fa8b Remove SK_IGNORE_FREETYPE_COLRV0_LOAD_FLAGS_FIX
All users have been updated. This flag and the code it guards can now be
removed.

Bug: skia:12956
Change-Id: I8115235fdbe12f8afa1973f43f0f2870447e5e01
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511756
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Dominik Röttsches <drott@google.com>
Commit-Queue: Dominik Röttsches <drott@google.com>
2022-02-22 16:35:31 +00:00
Herb Derby
4f7b656012 use TypefaceID conversion for unflattening
Use the SkStrikeClient to do the TypefaceID translation if present
when creating a GrGlyphVector.

With this change, Chromium should be able to use the
flatten/MakeFromBuffer API. Currently, this will only
serialize DirectMask (the most common type) drawing.

Other SubRun type will follow soon.

Bug: chromium:1278340

Change-Id: I08a46c7e4e13f7bd899abfdad89c5b3db2548d6a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/511416
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-22 15:53:39 +00:00
Herb Derby
fca03fe881 fix matrix use in coversion, and update test to catch it
This failure happens when using the SkRemoteGlyphCache system
*and* serializing slugs. The problem is that the origin from the
blob conversion was applied twice causing all the sub-pixel
positions to be off. This often pass because this position often
is {0, 0}.

Change-Id: I0384cfc1de5c32851381390661d1f4a8a6595ab2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510724
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-22 15:15:43 +00:00
Nathaniel Nifong
5637705cea Add defines to skqp build
Change-Id: I35f312045937ab2486084524d4ed32bc305524e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510856
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-22 14:39:13 +00:00