Commit Graph

59415 Commits

Author SHA1 Message Date
Kevin Lubick
acab911351 [bazel] Make use of test_on_env to spin up server for gms
In order to extract the PNG files produced by our CanvasKit gms,
we need our JS tests to POST them to a server which can write to
disk. The easiest way to do this is to use the test_on_env
rule defined in the Skia Infra repo for exactly this purpose.

This required https://skia-review.googlesource.com/c/buildbot/+/510717
to be able to configure the binary correctly and
https://skia-review.googlesource.com/c/buildbot/+/511862, for nicer
debugging so the skia-infra dep was updated via the following commands:
$ go get go.skia.org/infra@d8a552a29e
$ go mod download
$ make -C infra/bots train
$ make -C bazel gazelle_update_repo
This caused many automated changes to infra/bots/tasks.json

The flow is:
1. User types bazelisk test :hello_world_test_with_env
2. The test_on_env rule starts gold_test_env and waits
   for the file defined in $ENV_READY_FILE to be created.
3. gold_test_env starts a web server on a random port. It
   writes this port number to $ENV_DIR/port. Then, it
   creates $ENV_READY_FILE to signal ready.
4. test_on_env sees the ready file and then starts the
   karma_test rule. (Reminder: this is a bash script
   which starts karma using the Bazel-bundled chromium).
5. The karma_test rule runs the karma.bazel.js file (which
   has been injected with some JS code to fill in Bazel
   paths and settings) using Bazel-bundled node. This reads
   in the port file and sets up a Karma proxy to redirect
   /gold_rpc/report to http://localhost:PORT/report
6. The JS tests run via Karma (and do assertions via Jasmine).
   Some tests, the gms, make POST requests to the proxy.
7. gold_test_env gets these POST requests writes the images
   to a special Bazel folder on disk as defined by
   $TEST_UNDECLARED_OUTPUTS_DIR.
8. test_on_env identifies that the tests finish (because the
   karma_test script returns 0). It sends SIGINT to gold_test_env.
9. gold_test_env stops the webserver. The special Bazel folder
   will zip up anything inside it and make it available for
   future rules (e.g. a rule that will upload to Gold via goldctl).

Suggested Review Order:
 - bazel/karma_test.bzl to see the test_on_env rule bundled into
   the karma_test macro. I chose to put it there because it might
   be confusing to have to define both a karma_test and test_on_env
   rule in the same package but not be able to call one because it
   will fail to talk to the server.
 - gold_test_env.go to see how the appropriate files are written
   to signal the environment is ready and the handlers are set up.
 - karma.bazel.js to see how we make our own proxy given the
   port from the env binary. The fact that we could not create
   our own proxy with the existing karma_test rule was why the
   chain ending in https://skia-review.googlesource.com/c/skia/+/508797
   had to be abandoned.
 - tests/*.js to see how the environment is probed via /healthz
   and then used to make POST requests with data.
 - Everything else.

Change-Id: I32a90def41796ca94cf187d640cfff8e262f85f6
BUG: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510737
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-02-28 14:05:54 +00:00
skia-autoroll
f988cba8a7 Roll ANGLE from cbc1c9c8afa6 to 8390196a308b (26 revisions)
cbc1c9c8af..8390196a30

2022-02-26 syoussefi@chromium.org Revert "Remove ImageViewHelper from ResourceUseList"
2022-02-26 gman@chromium.org Add Clearifying comment about Occlusion Query Test
2022-02-25 abdolrashidi@google.com Update API version in VulkanHelper to 1.1
2022-02-25 timvp@google.com Android: Skip flaky EGL end2end tests
2022-02-25 syoussefi@chromium.org Vulkan: Add precision fix to SPIR-V transformation validation
2022-02-25 antonio.caggiano@collabora.com EGL: CreatePlatformWindowSurfaceEXT
2022-02-25 erikrose@google.com Correct a typo that was keeping Skia from compiling.
2022-02-25 b.schade@samsung.com Vulkan: Clear Recycler's mObjectFreeList on destroy
2022-02-25 kpiddington@apple.com Metal: PVRTC formats fail conformance tests on simulator
2022-02-25 ianelliott@google.com Add to ANGLE's OWNERS
2022-02-25 yuxinhu@google.com Remove ImageViewHelper from ResourceUseList
2022-02-25 m.maiya@samsung.com Vulkan: Account for Invariant in transformDecorate
2022-02-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from d321c7ec84de to 2328c3fcf88d (4 revisions)
2022-02-25 timvp@google.com Vulkan: Add ClearBenchmark.Run/vulkan_scissoredClear
2022-02-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from cd8e0282137f to f423bda7e8e3 (12 revisions)
2022-02-25 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from effb00c1eb6d to 903941d19666 (506 revisions)
2022-02-24 yuxinhu@google.com Upgrade Python scripts from Python2 to Python3
2022-02-24 antonio.caggiano@collabora.com Vulkan: Duplicate dmabuf FD on import
2022-02-24 jmadill@chromium.org Rename FastUnordered types to FlatUnordered.
2022-02-24 antonio.caggiano@collabora.com Vulkan: Wayland dependency
2022-02-24 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 7529468c7902 to cd8e0282137f (2 revisions)
2022-02-24 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e092c426ee21 to effb00c1eb6d (431 revisions)
2022-02-24 syoussefi@chromium.org Vulkan: Make Overlay init lazy
2022-02-23 syoussefi@chromium.org Vulkan: Shader support for KHR_blend_equation_advanced
2022-02-23 lubosz.sarnecki@collabora.com Tests: Add Real Racing 3 trace.
2022-02-23 gert.wollny@collabora.com Capture/Replay: Capture GetTexLevelParameterfvANGLE params

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 kjlubick@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: kjlubick@google.com
Test: Test: ClearBenchmark.Run/vulkan_scissoredClear
Test: Test: EGLContextSharingTestNoSyncTextureUploads.NoSync
Test: Test: EGLReadinessCheckTest.GetProcAddressNegativeTest
Test: Test: EGLReadinessCheckTest.HasGetPlatformDisplayEXT
Test: Test: EGLReadinessCheckTest.IsRunningOnANGLE
Test: Test: EGLSurfaceTest.ResizeWindowWithDraw
Test: Test: angle_perftests --gtest_filter="*real_racing3*"
Test: Test: angle_unittests --gtest_filter=*KHRBlendEquationAdvanced*
Change-Id: I22afc2757d45d9d100df63009a4e37e67e779015
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513502
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-28 05:36:09 +00:00
skia-autoroll
4d2ddc8e94 Roll SwiftShader from 2cf793302082 to 949ffcf55151 (12 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/2cf793302082..949ffcf55151

2022-02-26 capn@google.com Refactor image offset methods
2022-02-26 swiftshader.regress@gmail.com Regres: Update test lists @ 310874c9
2022-02-25 sugoi@google.com Fix dynamic rendering implicit clears with multiview
2022-02-25 capn@google.com Set the stack limit through a function attribute
2022-02-25 capn@google.com Regres: remove OpenGL ES testlists
2022-02-25 capn@google.com Assert llvm::Expected<> don't contain an error
2022-02-25 sugoi@google.com VK_KHR_maintenance4 support
2022-02-25 sugoi@google.com LocalSizeId for VK_KHR_maintenance4
2022-02-25 martin.troiber@gmail.com Add LLVM-Submodule backend option
2022-02-25 swiftshader.regress@gmail.com Regres: Update test lists @ 9f170f07
2022-02-25 sugoi@google.com Image memory requirements for VK_KHR_maintenance4
2022-02-25 sugoi@google.com vkGetImageMemoryRequirements2 refactor

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 kjlubick@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: kjlubick@google.com
Change-Id: Iafb7a8049617bee7689fac3bc2d6bf0b06ff5aea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513501
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-28 04:49:42 +00:00
skia-autoroll
8a9f3c9d1a Roll Dawn from 4570ab5ad89a to faa889d0b046 (11 revisions)
https://dawn.googlesource.com/dawn.git/+log/4570ab5ad89a..faa889d0b046

2022-02-27 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b128337ffbec to 949ffcf55151 (1 revision)
2022-02-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 310874c922a8 to b128337ffbec (1 revision)
2022-02-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 7f03fb5d8c18 to 8390196a308b (14 revisions)
2022-02-26 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from dbf75bc21793 to 2e6269acb094 (3 revisions)
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f423bda7e8e3 to 310874c922a8 (7 revisions)
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Tint from fe08ba467747 to dbf75bc21793 (1 revision)
2022-02-25 yang.gu@intel.com Skip the check of maxFragmentCombinedOutputResources for Mesa llvmpipe driver
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7ceb0dd44a7a to 430a8c72d298 (1 revision)
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 1e1505b53cf0 to 7f03fb5d8c18 (2 revisions)
2022-02-25 jiawei.shao@intel.com Fix use-after-free issue in Create*PipelineAsyncTasks::Run()
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 732515a031fa to f423bda7e8e3 (10 revisions)

Also rolling transitive DEPS:
  https://dawn.googlesource.com/tint from fe08ba467747 to 2e6269acb094

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 cwallez@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: cwallez@google.com
Change-Id: I6947fa499e29951cb95830489bd7a25521991299
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513500
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-28 04:40:15 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
6a7383e3dd Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: I2ad4ac3288294eba23ab2c96655509590a4c8fb8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513497
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-02-27 08:18:41 +00:00
skia-autoroll
6c30aa2716 Roll SK Tool from c1551fad4fa6 to 65e434c77472
https://skia.googlesource.com/buildbot.git/+log/c1551fad4fa6..65e434c77472

2022-02-27 skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com Update CIPD Packages

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

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

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

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

Tbr: jcgregorio@google.com
Change-Id: I0740a8153a7eecc0cf75d197d9eb139e2e6a4b61
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513457
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-27 06:16:10 +00:00
Arman Uguray
557f2795f2 [sksl][tests] Enable CLONE and REHYDRATE tests for GPU/ES3 cases
These tests were not being run for ES3-only GPU and non-strict-ES2 CPU
tests. CLONE and REHYDRATE variants are now generated for all test
declarations.

Change-Id: I8ce14bd50f175d0bae66d9593b68a42fab701f93
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513056
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-02-25 23:21:10 +00:00
Ben Wagner
e5d89539fb Apply palette request to DirectWrite fonts
Bug: skia:12984
Change-Id: Ic0c3774c38c19efb224bf4462ce1397c21c95b78
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512576
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-25 22:58:40 +00:00
John Stiles
1380d2c02c Use unordered comparisons for != in SPIR-V.
On modern hardware, this will give the correct result for `NaN != x`
(true).

Change-Id: I9683f74756da5da5f34ccacec02c1f2449791f26
Bug: skia:12977
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513317
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-02-25 22:22:43 +00:00
Ben Wagner
636953d234 Respect aliased color glyph rendering with FreeType
The FreeType port always requested that color glyphs be antialiased.
Respect the setting for aliased glyph rendering with color glyphs.

Change-Id: If9a477b705a91b1284739bd190aea90b2929612f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512949
Reviewed-by: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-02-25 22:19:30 +00:00
John Stiles
07f3d2067a Update assertions to use SkTFitsIn.
Change-Id: I686b858ca5b0497731bdaa15027ebbaaa70d13b9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512951
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-25 20:43:40 +00:00
John Stiles
468b240f8f Add support for ConstructorArrayCast to rehydrator.
A surprising omission--this already existed in the dehydrator, and in
our "binary format" docs, but the rehydrator had never implemented it.

Change-Id: I5418006d6c76430089e36922eb6eada861fb51e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512950
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-02-25 20:16:06 +00:00
John Stiles
30f4d88c04 Add support for unsigned ints to SkSL Dehydrator.
Previously, we wrote all ints via readS32/writeS32 which would assert
that a dehydrated integer was within INT_MIN to INT_MAX range. This
assumption does not hold for unsigned values. Now, we use
readU32/writeU32 for unsigned values.

Change-Id: I50e3a38bbfd060b493d7c6a1196cdd44ce05e738
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513258
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-02-25 19:58:01 +00:00
Herb Derby
92f2cf6d8f serialize Drawables
Add serialization to DrawableOpSubmitter, and DrawableSubRun.
Add the Bulk glyph infrastructure to the SkStrike and
SkScalerCache.

Bug: chromium:1278340

Change-Id: Ibd008d200142fc0476b2467dbdf5973544cfecea
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512945
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 19:46:35 +00:00
John Stiles
7cb1390c30 Simplify symbol table setup.
Previously, `setupSymbolTable` would add a bunch of non-ES2 type aliases
to the program's symbol table if ES2 restrictions were disabled. As it
turns out, this was largely unnecessary ever since we restructured how
non-ES2 types are restricted. Nowadays, the root symbol table has all
types in it, and Type::isAllowedInES2 is used to disallow non-ES2 types
when strict ES2 mode is on. (See http://review.skia.org/459119)

The only missing piece here was that `add_glsl_type_aliases` was never
updated to add the non-square GLSL matrix alias types, and
`setupSymbolTable` papered over this. Now, `add_glsl_type_aliases` adds
these types directly.

Change-Id: I30ca62a3e6fd130c3078b38d917c3b7c0885e5b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512946
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Ethan Nicholas <ethannicholas@google.com>
Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
2022-02-25 18:45:18 +00:00
Herb Derby
529a85363d plumb for serializable DrawableSubRuns
Change-Id: I72be508a33faf2d05bf4fba5d557b217bb56d5ad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512943
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 18:27:11 +00:00
Ben Wagner
c912570a95 Handle override not modifying GlyphRunList in Viewer
It is possible that when filtering a blob for a glyph run list that the
blob does not need to be changed at all. In this case the original
glyphRunList can be used unmodified. When this happens `filterTextBlob`
does not fill out the `cache` but instead returns the original `blob`.
The existing code assumed that the `cache` was always filled and would
crash when trying to create a glyph run list out of it when it wasn't.

Change-Id: Ia8d9339c613a2157968bd2774966a7ad16edcfee
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512944
Commit-Queue: Ben Wagner <bungeman@google.com>
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 17:55:14 +00:00
Herb Derby
98755b1af0 serialize/deserialize PathSubRuns
Serialize the glyphIDs and descriptor, and reconstruct the paths
while deserializing.

Change-Id: I3333b9d3286ec67f2e8a601b2fb2dba6b93533d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512938
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 17:12:40 +00:00
Herb Derby
d48eb47697 Reland "store GlyphIDs in the PathOpSubmitter"
This is a reland of 24d732f4ca

I removed glyphIDs and Paths sharing memory. They are just in
separate arrays. Having them share causes a race in threaded
environments like DDLs. Now everything is const. This allows
passing just the SkDescriptor instead of the sk_sp<SkStrike>.

Original change's description:
> store GlyphIDs in the PathOpSubmitter
>
> In order to support serializing, have the PathOpSubmitter store
> SkPathIDs until the paths are needed for drawing, and then lookup
> the paths and store them in the memory that the IDs occupied.
> This is a one time operation. Wire the strike down from the
> SkGlyphRunPainter down to the PathOpSubmitter.
>
> Change-Id: Id9382fefc252eebafeb9792f380d24ec0939316d
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512937
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

Change-Id: I99ecfc1cb052b0d85d11403b5ef24d738f0a1d2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512942
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 15:44:53 +00:00
John Stiles
c4d2de3ab5 Remove obsolete/commented-out TODO for Intel workarounds.
Change-Id: I518edbc3d64db409e7977e642acbe5b906016f60
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512936
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-02-25 14:33:16 +00:00
John Stiles
320a4de77b Reland "Add synonyms to GLSLGeneration for 100es and 300es."
This is a reland of 63e7ba59ce

This fixes accidental change of `310es` -> `300es` in one spot.

Original change's description:
> Add synonyms to GLSLGeneration for 100es and 300es.
>
> We use GLSLGeneration::k330 to mean GLSL 3.30 for desktop GLSL and also
> for ES 3.00. k110 lived a double life as ES 1.00. This was confusing, so
> several places in the code had comments like "this is the value for GLSL
> ES 3" to clarify.
>
> This CL adds new enums "k100es" and "k300es" which use the same values
> as "k110" and "k330", but make the code easier to understand at a
> glance.
>
> Change-Id: Ib4dfbd8cd7bab45b35d6ad7303ccf87c7eeca3ab
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/506898
> Auto-Submit: John Stiles <johnstiles@google.com>
> Commit-Queue: John Stiles <johnstiles@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Greg Daniel <egdaniel@google.com>

Change-Id: I2e271090687000aa522b217b9d54f9332ecd3a49
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512728
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-25 14:23:42 +00:00
Herb Derby
e69791f92f Revert "store GlyphIDs in the PathOpSubmitter"
This reverts commit 24d732f4ca.

Reason for revert: Race for TSAN in DDLs and compile problem on chrome

Original change's description:
> store GlyphIDs in the PathOpSubmitter
>
> In order to support serializing, have the PathOpSubmitter store
> SkPathIDs until the paths are needed for drawing, and then lookup
> the paths and store them in the memory that the IDs occupied.
> This is a one time operation. Wire the strike down from the
> SkGlyphRunPainter down to the PathOpSubmitter.
>
> Change-Id: Id9382fefc252eebafeb9792f380d24ec0939316d
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512937
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>

Change-Id: Ifab80f53f94a0bd99914bbd24201c9f933d9232b
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512941
Auto-Submit: Herb Derby <herb@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-02-25 05:48:16 +00:00
skia-autoroll
7bff1ac1dd Roll SwiftShader from cd8e0282137f to 2cf793302082 (9 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/cd8e0282137f..2cf793302082

2022-02-24 sugoi@google.com Buffer memory requirements for VK_KHR_maintenance4
2022-02-24 sugoi@google.com VK_KHR_zero_initialize_workgroup_memory support
2022-02-24 swiftshader.regress@gmail.com Regres: Update test lists @ cd8e0282
2022-02-24 capn@google.com Implement DAZ/FTZ control for non-Windows x86
2022-02-24 capn@google.com Implement separate DAZ/FTZ control for Windows
2022-02-24 capn@google.com Fix comparing lodOrBias as integer values
2022-02-24 capn@google.com Add utility functions for detecting divergent/uniform values
2022-02-24 syoussefi@google.com Set advancedBlendMaxColorAttachments to max
2022-02-24 sugoi@google.com Remove unicode characters from comments

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: I03ca961c8f5b4a475a50cea9f81b2b82554003fa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513019
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-25 04:51:46 +00:00
skia-autoroll
8dd7569db5 Roll Dawn from 6084407b212f to 4570ab5ad89a (7 revisions)
https://dawn.googlesource.com/dawn.git/+log/6084407b212f..4570ab5ad89a

2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 43273273f12e to 1e1505b53cf0 (4 revisions)
2022-02-25 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from f0e7532f806d to 7ceb0dd44a7a (3 revisions)
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from cd8e0282137f to 732515a031fa (2 revisions)
2022-02-24 jiawei.shao@intel.com Ensure non-renderable formats don't support multisampling
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 1e773db9070e to 43273273f12e (3 revisions)
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from fa0208dc5d37 to f0e7532f806d (1 revision)
2022-02-24 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 57d90a68ba40 to cd8e0282137f (1 revision)

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: I7470e0789cae88b723d00ed43add9b9540cc3512
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/513018
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-25 04:33:40 +00:00
Herb Derby
24d732f4ca store GlyphIDs in the PathOpSubmitter
In order to support serializing, have the PathOpSubmitter store
SkPathIDs until the paths are needed for drawing, and then lookup
the paths and store them in the memory that the IDs occupied.
This is a one time operation. Wire the strike down from the
SkGlyphRunPainter down to the PathOpSubmitter.

Change-Id: Id9382fefc252eebafeb9792f380d24ec0939316d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512937
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-02-25 02:00:24 +00:00
skia-autoroll
5779694c23 Roll ANGLE from 78c64dd74ee5 to cbc1c9c8afa6 (14 revisions)
78c64dd74e..cbc1c9c8af

2022-02-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b8d7deae87a7 to 7529468c7902 (5 revisions)
2022-02-23 gert.wollny@collabora.com Capture/Replay: Mark another test as Windows-only crash
2022-02-23 gert.wollny@collabora.com Capture/Replay: Allow capturing of multisample texture content
2022-02-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 76e3790bfd26 to e092c426ee21 (458 revisions)
2022-02-23 abdolrashidi@google.com Update Python scripts to run with Python 3
2022-02-22 ynovikov@chromium.org Increase end2end timeout and sharding on Pixel 6
2022-02-22 syoussefi@chromium.org Revert "Vulkan: Suppress VVL message about allocation exceeding heap size"
2022-02-22 antonio.caggiano@collabora.com Vulkan: Fix dmabuf memory importable check
2022-02-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from d25df2a67cd2 to b8d7deae87a7 (2 revisions)
2022-02-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 2b8afbc70460 to 76e3790bfd26 (193 revisions)
2022-02-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b4a56a893496 to d25df2a67cd2 (5 revisions)
2022-02-21 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 6594a8d1e6cf to 2b8afbc70460 (606 revisions)
2022-02-18 cclao@google.com Vulkan: Call releaseStagedUpdates before releaseImage
2022-02-18 jmadill@chromium.org infra: Enable Python 3 for ANGLE recipe.

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,robertphillips@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,robertphillips@google.com
Change-Id: Id28af748b83edcc640e0d2ff1083cab05d159dfc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512917
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-02-25 00:31:42 +00:00
Arman Uguray
9c30ad1f72 [sksl][tests] Restore SKSL_TEST_CPU_ES3 CPU-only behavior
The SKSL_TEST_CPU_ES3 has been misinterpreted to mean that the tests
should run on "SkVM and OpenGL" while it was originally meant for tests
that were explicitly disabled on GPU backends.

* This macro is now called "SKSL_TEST_CPU_NO_STRICT_ES2" and the comments
reflect the fact that the tests are meant for CPU-only.

* Removed the infra bot exceptions for the matrix constructor tests as
they are now restricted to run only on CPU.

Bug: skia:12970
Change-Id: I46dcec51ef6998f6a8a7b4610c39560da1e59057
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512578
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-02-24 22:32:12 +00:00
Brian Osman
c6e373d47d Adjust Google3 stack-trace dumping to match recent refactor
Cq-Include-Trybots: luci.skia.skia.primary:Canary-G3
Change-Id: Iebd4aaec098b6bf2e863d0c93d7fd826d3ec0edc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512724
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-02-24 20:32:27 +00:00
Greg Daniel
6c370c9d82 [graphite] Fill out ResourceCache functions.
Bug: skia:12754
Change-Id: Ie012bce21597ef2f0f1555d1cc6302b7eda0dd56
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507923
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-02-24 20:16:01 +00:00
skia-autoroll
1c4c1a0994 Roll ANGLE from ad462491fbfe to 78c64dd74ee5 (15 revisions)
ad462491fb..78c64dd74e

2022-02-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 13f7365e81be to b4a56a893496 (11 revisions)
2022-02-18 cnorthrop@google.com Python3: Update generate_test_spec_json.py
2022-02-18 lubosz.sarnecki@collabora.com FrameCapture: Capture empty buffer generation.
2022-02-18 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from d984ec3b132a to 6594a8d1e6cf (1749 revisions)
2022-02-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 834c2e16ae1c to d321c7ec84de (7 revisions)
2022-02-17 cclao@google.com Vulkan: Fix DynamicBuffer cache reuse.
2022-02-17 syoussefi@chromium.org Translator: Fix RunAtTheEndOfShader w.r.t discard
2022-02-17 lubosz.sarnecki@collabora.com gl.xml: Remove GL_BLEND_EQUATION_EXT from GetPName.
2022-02-17 jmadill@chromium.org Vulkan: Add overlay and stats for descriptor set caches.
2022-02-17 m.maiya@samsung.com Vulkan: Add a feature to retain SPIR-V debug info
2022-02-17 jmadill@chromium.org Vulkan: Refactor DynamicBuffer::allocate.
2022-02-17 jmadill@chromium.org Vulkan: Simplify SubAllocation data types.
2022-02-17 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 9fb91023eb58 to 4d9fe6bf1f0c (8 revisions)
2022-02-17 yuxinhu@google.com Add instructions to build RenderDoc for Android on Windows
2022-02-16 cclao@google.com Vulkan: Allocate space for default attrib only if it is enabled

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: GLSLTest_ES3.ConstantConditionGuardingDiscard
Test: Test: GLSLTest_ES3.NestedUnconditionalDiscards
Test: Test: angle_end2end_tests --gtest_filter="SimpleOperationTest.BlendEquationGetInteger/*"
Test: Test: angle_end2end_tests --gtest_filter="VertexAttributeTestES3.EmptyArrayBuffer/*"
Change-Id: If37b98a326e52c67f66a4bc6f8ed74df3ecd93c2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512800
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 19:20:13 +00:00
Julia Lavrova
5716c3ffa4 Reland "Reland "Adding a trace to nanobench for RP/VM comparison""
This reverts commit 0e48516aae.

Reason for revert: Again trying to land this CL
Original change's description:
> Revert "Reland "Adding a trace to nanobench for RP/VM comparison""
>
> This reverts commit 94b8dd6710.
>
> Reason for revert: https://ci.chromium.org/p/chromium/builders/try/android-marshmallow-x86-rel appears to either not support this instruction or it is disabled.
>
> Original change's description:
> > Reland "Adding a trace to nanobench for RP/VM comparison"
> >
> > This reverts commit 39728eb980.
> >
> > Reason for revert: Need to reland after I figure out what happened
> >
> > Original change's description:
> > > Revert "Adding a trace to nanobench for RP/VM comparison"
> > >
> > > This reverts commit e855b1273f.
> > >
> > > Reason for revert: breaking the tree
> > >
> > > Original change's description:
> > > > Adding a trace to nanobench for RP/VM comparison
> > > >
> > > > Run nanobench with --compare key and collect data for comparison:
> > > > ./out/Release/nanobench --csv --config 8888 --skvm --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee VM.data
> > > > ./out/Release/nanobench --csv --config 8888 --forceRasterPipeline --compare --loops 100 --samples 1 --match $(ls skps | grep --invert-match svg ) 2>&1 | tee RP.data
> > > > awk 'BEGIN {OFS=","; fileNum = 0} ($2 ~ /MB/) && fileNum == 0 {vmvmcycles[$3] = $6; vmvmscan[$3] = $8; vmvmpixels[$3] = $10; vmvminterp[$3] = $11;  vmrpcycle[$3] = $14; vmrpscan[$3] = $16; vmrppixels[$3] = $18} ($2 ~ /MB/) && fileNum == 1  {print $3, vmvmcycles[$3], vmvmscan[$3], vmvmpixels[$3], vmvminterp[$3], $6, $8, $10, $11, $14, $16, $18} ENDFILE {fileNum += 1}' VM.data RP.data > compare.csv
> > > >
> > > > You can see an example of comparison table here:
> > > > https://docs.google.com/spreadsheets/d/1Q57oz6Jn8JPQkPzUbtO0fcZh2VhwPhxwsLaHnSb9uR0/edit#gid=406063636
> > > >
> > > > Change-Id: I8fa35e3fb087bce00ab19355a3bc021334aa7a80
> > > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/501337
> > > > Reviewed-by: Herb Derby <herb@google.com>
> > > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> > >
> > > Change-Id: I6799b90ffd8bc05c65d1185bfc07a06af05e2038
> > > No-Presubmit: true
> > > No-Tree-Checks: true
> > > No-Try: true
> > > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507182
> > > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> > > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> >
> > Change-Id: I3668b5a40f310598e23c922b1eb6f93db4dac13c
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/507183
> > Reviewed-by: Herb Derby <herb@google.com>
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
>
> Change-Id: I5d0174fca1aeaa0f3e75a8e1f643265701068f42
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508396
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Commit-Queue: Ben Wagner <bungeman@google.com>

Change-Id: Ibf7c8957427dc8a1cdc133774608b48ab6715c7f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/508536
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
2022-02-24 19:11:14 +00:00
Nathaniel Nifong
c0714019cd Copy in list of test exclusions from go/skqp-cts-tests
Bug:skia:12980

Change-Id: I28406750487ff7a8c74508bad93dc30a043ac1ba
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512153
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-24 19:03:19 +00:00
Nathaniel Nifong
4040863fc8 fix makefile to reflect bazel build structure in buildbot
Change-Id: Ieb8a85f721e2c2c8894230eb98731b833de8f252
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/512777
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Nathaniel Nifong <nifong@google.com>
2022-02-24 18:59:53 +00:00
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