Commit Graph

60395 Commits

Author SHA1 Message Date
Robert Phillips
d3600f81a5 Handle abandoned context in localmatrixshader GM
Change-Id: If73cb25307ee1607470a75789183cdafec28e03a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536477
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2022-05-03 14:35:33 +00:00
Ben Wagner
d3a9923ea2 [svg] Add support for var in color parsing.
In OT-SVG `var` support is required for palette use. Even without
palette support this is needed to get the fallback color.

Change-Id: Iea8c4502b57933115f5cbf44fcc183fef19da984
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534140
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-05-03 14:34:35 +00:00
Kevin Lubick
c2f47190c1 [bazel] Add location for G3 define
Change-Id: I7811e0e70e4959be8caa1cab9e4f1fa3421d72d1
Bug: skia:13211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536596
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
2022-05-03 14:22:33 +00:00
Yotam Hacohen
5ab804aff4 Remove the return value of setDeviceCoordinateSystem
In https://skia-review.googlesource.com/c/skia/+/527505 we removed the
'invert' call from 'SetDeviceCoordinateSystem', removing the only place
where the function might return 'false'. This patch changes the return
value from bool to void, as it is obsolete.

Change-Id: I0262f82d2cf339879ea716bdb5f16ca26d453cb9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536097
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-05-03 14:01:48 +00:00
Robert Phillips
eae1848ec7 [graphite] Update two GMs that use local matrices
Graphite requires graphite images to be graphite-backed.

localmatrixshader_nested, in particular, is useful for ensuring
local matrices are handled correctly.

Bug: skia:12701
Change-Id: Idda51eff6db2bfff68d6b6ca54fc292987b5860c
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536037
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-05-03 13:40:56 +00:00
Herb Derby
8020a24a8c Remove unused parameter from makeAtlasTextOp
The SubRunOwner parameter was used exclusively for the
*NoCache SubRun system. This system has been removed from
the code.

Change-Id: Ic3b4a1e4f49dcbd9b297e5011d2e96dd163a9acb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536437
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-05-03 13:38:11 +00:00
Herb Derby
39259f5072 A safe Slug/TextBlob + alloc allocator
Change-Id: I4799eb0f6d1c00c220509eadfa16fcb6fabdeebc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536105
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-05-03 13:35:41 +00:00
Kevin Lubick
1f99c991d8 Manually roll Dawn from 41e4d9a34c1d to a1a3e0484c48 (18 revisions)
https://dawn.googlesource.com/dawn.git/+log/41e4d9a34c1d..a1a3e0484c48

2022-05-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 717818ff1f86 to 4957ae734445 (4 revisions)
2022-05-03 lokokung@google.com Hide blob caching behind a toggle on the device for now.
2022-05-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 02576edd7f4f to cdf43bd816d7 (4 revisions)
2022-05-03 lokokung@google.com Removes device from load/store in caching interface.
2022-05-03 lokokung@google.com Adds pipeline cache and implementation for Vulkan backend.
2022-05-03 lokokung@google.com Wrap get_gitHash in try-catch to prevent failures in tarball builds.
2022-05-02 bclayton@google.com Roll third_party/webgpu-cts/ 21af43c62..547d67bc2 (15 commits)
2022-05-02 bclayton@google.com tools/cts: Bunch of fixes for 'cts roll'
2022-05-02 bclayton@google.com tools: Add the 'cts roll' sub-command
2022-05-02 bclayton@google.com tools: Add the 'cts export' sub-command
2022-05-02 brandon1.jones@intel.com Add External Texture Conversion Constant Params
2022-05-02 bclayton@google.com Fix dawn/node build with make
2022-05-02 amaiorano@google.com Factor out code to flatten bindings for msl
2022-05-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 1cde45b8d7aa to 717818ff1f86 (1 revision)
2022-05-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 6fb4e0498abd to 02576edd7f4f (1 revision)
2022-05-02 jrprice@google.com Fix uniformity issue in CopyTextureForBrowserHelper
2022-05-02 jrprice@google.com wgsl: Use commas for structs in helper shaders
2022-05-02 jrprice@google.com tint: Add ProgramBuilder::Else() helper

Change-Id: Iec54e3374ad1cc517a160150eb44b7b286fdb757
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536396
Reviewed-by: Julia Lavrova <jlavrova@google.com>
2022-05-03 13:24:06 +00:00
Robert Phillips
351a46f4fc [graphite] Force all snippets that need local coords to supply a localMatrix
It is also a requirement that the local matrix be the first uniform.
This will let us more generally handle nested local matrices (in a
follow up CL).

Bug: skia:12701
Change-Id: If093363c4820228f139f383b4e2f94dbc473017a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536036
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2022-05-03 13:23:25 +00:00
skia-autoroll
21bfb4e6a6 Roll ANGLE from e55990e35ddc to 5113ae8ef06a (21 revisions)
e55990e35d..5113ae8ef0

2022-05-03 syoussefi@chromium.org Vulkan: Explicitly enable per-sample shading if `sample` used
2022-05-03 brianosman@google.com Reland "Make SPIRV optional for Metal backend"
2022-05-03 cclao@google.com Vulkan: Add log for buffer pool stats
2022-05-02 cclao@google.com Vulkan: Call cleanupGarbage only if mLastCompletedQueueSerial changed
2022-05-02 b.schade@samsung.com Fix ValidateFramebufferTextureLayer for cubemap arrays
2022-05-02 doughorn@google.com Re-land fixing of commit ID for Android builds.
2022-05-02 abdolrashidi@google.com Vulkan: MSAA swapchain resolve based on renderArea
2022-05-02 romanl@google.com Update Android deqp and end2end sharding
2022-05-02 romanl@google.com Fix presubmit following https://crrev.com/c/3611486
2022-05-02 senorblanco@chromium.org D3D11: recompile all shaders using 10.0.20348.0 toolchain.
2022-05-02 cnorthrop@google.com Tests: Add GFXBench Tessellation trace
2022-05-02 lexa.knyazev@gmail.com OpenGL: Add allow_astc_formats workaround
2022-05-02 syoussefi@chromium.org Remove whitespace from features json files
2022-05-02 brianosman@google.com Test both MSL translators in APPLEClipDistanceTest
2022-05-02 lexa.knyazev@gmail.com Expand Intel GPU detection
2022-05-02 antonio.caggiano@collabora.com Re-land: "Vulkan: Support Wayland"
2022-05-02 gert.wollny@collabora.com Capture/Replay: handle glGetVertexAttrib parameter value
2022-05-02 romanl@google.com Use app data dir instead of /sdcard for writing qpa file
2022-05-02 antonio.caggiano@collabora.com Fix formatting
2022-05-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 7b51f5f85aad to 1cde45b8d7aa (4 revisions)
2022-05-02 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 3a1ff9044aec to 929311ac6298 (541 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 jlavrova@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: jlavrova@google.com
Test: Test: Run script on Android infra, verify hash is gathered properly.
Test: Test: angle_perftests --gtest_filter="*tessellation*"
Change-Id: I794eedba8c9beef35b8c3f379410e25ad6a34623
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536337
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-03 05:57:21 +00:00
skia-autoroll
0ee380a687 Roll vulkan-deps from 717818ff1f86 to 4957ae734445 (4 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/717818ff1f86..4957ae734445

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-skia-autoroll
Please CC jlavrova@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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: jlavrova@google.com
Change-Id: I14d87d3507d800c7d4227099d9e874b696402025
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536340
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-03 05:22:57 +00:00
skia-autoroll
b99c39dbfb Roll Chromium from fa9bb0812095 to 8a1d55bd2528 (484 revisions)
fa9bb08120..8a1d55bd25

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

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/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:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Tbr: jlavrova@google.com
Change-Id: Ie392d0d5995edb5c5656a1bdbe8ba2ae38cbac2f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536338
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-03 05:16:39 +00:00
skia-autoroll
1d0cb8fba5 Roll SwiftShader from 6fb4e0498abd to cdf43bd816d7 (5 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/6fb4e0498abd..cdf43bd816d7

2022-05-02 swiftshader.regress@gmail.com Regres: Update test lists @ 6fb4e049
2022-05-02 capn@google.com Remove legacy build defines
2022-05-02 capn@google.com Document the vk::DescriptorSet memory layout
2022-05-02 capn@google.com Always enable MemorySanitizer instrumentation for vertex routines
2022-05-02 nicolascapens@google.com Revert "Always enable MemorySanitizer instrumentation for sampling routines"

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 jlavrova@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: jlavrova@google.com
Change-Id: Id1b2594cf467c96ec70a0cd891066a555dee2d6b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536339
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-03 04:53:16 +00:00
Arman Uguray
8b32ca8d83 Manual roll Dawn from cede544df34f to 41e4d9a34c1d (31 revisions)
https://dawn.googlesource.com/dawn.git/+log/cede544df34f..41e4d9a34c1d

2022-05-01 dsinclair@chromium.org Consistent formatting for Dawn/Tint.
2022-04-30 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 88693e6bf86c to 1cde45b8d7aa (2 revisions)
2022-04-30 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from e617219743aa to 6fb4e0498abd (1 revision)
2022-04-30 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 8b26c14c04f4 to e39dfe0fe61c (7 revisions)
2022-04-30 shrekshao@google.com Add LoadOp back to emscripten gen bits headers
2022-04-29 brandon1.jones@intel.com Reland ExternalTexture Gamma/Gamut Correction
2022-04-29 bclayton@google.com tools/setup-build: Into the 'active' symlink directory
2022-04-29 bclayton@google.com tools: Add the 'cts update' sub-command
2022-04-29 bclayton@google.com tools: Add the 'cts merge' sub-command
2022-04-29 bclayton@google.com tools: Add the 'cts results' sub-command
2022-04-29 bclayton@google.com tools: Add the 'cts time' sub-command
2022-04-29 bclayton@google.com tools: Add the 'cts format' sub-command
2022-04-29 bclayton@google.com tools: Begin adding the CTS command line tool
2022-04-29 bclayton@google.com tools: Add 'Duration' field to cts.Result.
2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from c9e605688988 to 88693e6bf86c (3 revisions)
2022-04-29 shrekshao@google.com Update default value for map range size to WGPU_WHOLE_MAP_SIZE
2022-04-29 bajones@chromium.org Deprecate dispatch* in favor of dispatchWorkgroups*
2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from adef92e7b4c6 to e617219743aa (2 revisions)
2022-04-29 bclayton@google.com tools: Add 'subcmd' package
2022-04-29 amaiorano@google.com tint: Update SKIP lines with specific FXC bug
2022-04-29 amaiorano@google.com tint: Update SKIP line for specific DXC failure
2022-04-29 amaiorano@google.com tint: delete e2e tests that fail because Tint detects infinite loops
2022-04-29 amaiorano@google.com tint: delete e2e test for bug/tint/807
2022-04-29 bclayton@google.com tools: Add more functionality to gerrit package
2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 437053a1635b to 8b26c14c04f4 (4 revisions)
2022-04-29 senorblanco@chromium.org OpenGL: skip depth and stencil tests if readback is unsupported.
2022-04-29 bclayton@google.com tools: Extract getDawnRoot() from run-cts to utils
2022-04-29 bclayton@google.com dawn/native: Fix a bunch of GCC warnings
2022-04-29 bclayton@google.com tools: Add src/cts/expectations Update()
2022-04-29 bclayton@google.com tint/sem: Add abstract int and float types
2022-04-29 bclayton@google.com tools: Add src/cts/results.List.MinimalVariantTags

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 dsinclair@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
Change-Id: I3265cedec1bbb34ab79addd4b04b1df7ef9933ca
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536104
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-05-02 21:32:28 +00:00
Ben Wagner
e54df3563d Explicitly cast ints in SkSTArray.
The compiler can complain about these signed to unsigned conversions.
Explicitly cast them in initWithPreallocatedStorage to match the way
this is already done in init [0].

[0] 311b648013 "pack SkTArray"

Change-Id: I0f723094fd356f9c5971b35998c4ecd59c09332f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536099
Reviewed-by: Florin Malita <fmalita@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2022-05-02 20:48:30 +00:00
Brian Salomon
432f28c149 Disable anisotropic filtering on P30 GLES
Bug: skia:13286
Change-Id: Icf09efe04add2418832d6e348190b31fefc79c61
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536136
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
2022-05-02 20:43:36 +00:00
Arman Uguray
f2cd6e8b36 [ganesh][dawn] Fix -Wreturn-std-move-in-c++11 error
Change-Id: Ic47605588203df2a765b241c5c366973741b8867
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536100
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-05-02 20:06:29 +00:00
Robert Phillips
ca9ce4de1d [graphite] Make generated SkSL more readable
This CL:
Adds a name to each snippet
Labels the output_%d variables w/ the snippet they are the result of
Labels each set of uniforms w/ the snippet they feed into

Bug: skia:12701
Change-Id: Ib28fe265aaa63affe98386ead83ccdf4fb61c7e7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535962
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-05-02 19:49:52 +00:00
Kevin Lubick
9ef23c2f11 Update public.bzl after GrGlyph move
Change-Id: I44712cd067ce2ded6c28d0a5a4bd6ed6b878744d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536216
Reviewed-by: Julia Lavrova <jlavrova@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2022-05-02 19:44:28 +00:00
Michael Ludwig
c2f683f06a Reland "Delete HW tessellation shaders for curve/wedge tessellation"
This reverts commit 7d9f07c108.

Reason for revert: fixing public.bzl

Original change's description:
> Revert "Delete HW tessellation shaders for curve/wedge tessellation"
>
> This reverts commit 038818ba8e.
>
> Reason for revert: breaking g3 roll, need to update public bzl file I think
>
> Original change's description:
> > Delete HW tessellation shaders for curve/wedge tessellation
> >
> > GrPathTessellationShader_MiddleOut.cpp is just moved into
> > GrPathTessellationShader.cpp, and a few factories are cleaned up since
> > we don't have to differentiate between middle-out or hardware.
> >
> > Bug: skia:13263
> > Change-Id: I420faa614a89ef1a2c0f1075d1f8a067d15e9a81
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534200
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
> > Commit-Queue: Michael Ludwig <michaelludwig@google.com>
>
> Bug: skia:13263
> Change-Id: I42367a21c2bf1a4283e5d9b8d0e00961f9dea2e7
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536039
> Auto-Submit: Michael Ludwig <michaelludwig@google.com>
> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>

Bug: skia:13263
Change-Id: I76101f1dbfee454053c8d7502e83d3b04a768b34
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536096
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-05-02 18:58:12 +00:00
Arman Uguray
cc046f3cb3 [ganesh][dawn] Fix mapAsync range size invocation
Due to a bug in the WebGPU emscripten bindings, the Dawn backend was
only mapping 0-size region of a GPU buffer when invoking
wgpu::Buffer::MapAsync. To map the entire buffer, we now call it with
wgpu::kWholeMapSize.

Note that due to the same Emscripten bug, wgpu::Buffer::GetMappedRange
must be invoked with "size = 0" to obtaine the entire mapped range. This
inconsistency was the root cause for the mapping failures described in
skia:13266.

Also removed the workaround in the webgpu-bazel demo and made the demo
default to rendering a runtime effect because it's cooler.

Bug: skia:13266
Change-Id: Ia42fd33a4c897a99d37f0a43b065c1dd2f45ec22
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534944
Reviewed-by: Greg Daniel <egdaniel@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-05-02 18:41:47 +00:00
Arman Uguray
c908c3a898 [ganesh][dawn] Better handle buffer mapAsync failures
GrDawnGpu tries to guarantee the CPU mapping invariants of GrDawnBuffer
objects that are managed by a GrStagingBufferManager by issuing and
tracking mapAsync requests following command buffer submission. However,
this logic suffered from some issues where:

1. The code always assumed mapAsync succeeds. If a mapAsync request
   failed during shutdown due to a lost GPU connection, the GrDawnGpu
   destructor would spin forever waiting for pending mapAsync requests
   to complete.
2. If a client unmapped and then re-mapped a buffer that isn't managed
   by the async staging buffer logic in GrDawnGpu, the buffer would
   never get mapped and likely hit an assertion for a non-staging
   buffer.

These are now fixed:

* GrDawnBuffer now has more explicit error handling to make it more
  tolerant to mapAsync failures.
* GrGpuBuffer now relies on mapAsync completion callbacks instead of
  spinning on `GrGpuBuffer::isMapped` as a buffer may never get mapped
  in the case of an error. This also has the benefit of tracking the
  mapAsync procedure state on a per-request basis intead of relying on
  state stored in GrDawnBuffer. The existing `fBusyStagingBuffers` has
  been replaced by a single reference counted `GrDawnAsyncWait` object.
* A synchronous/blocking map function has been provided to satisfy the
  `GrGpuBuffer::onMap` contract. This method is not used in the existing
  staging buffer use cases in practice but it solves part of problem #2
  above.
* GrDawnGpu::onReadPixels now uses a GrDawnBuffer's blocking map
  functionality using the public GrGpuBuffer API. This has the same
  behavior as the existing blocking map that created and mapped a
  wgpu::Buffer directly.
* The invariants around GrDawnBuffer lifetime and CPU mapping are
  documented in class level comments.

Bug: skia:12512

Change-Id: I8bb92137fbd60c31066e4071bd696018b3563bb8
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/533758
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-05-02 17:20:55 +00:00
Jim Van Verth
2181b3f66d [graphite] Rename GrGlyph to sktext::gpu::Glyph
Move header to src/text/gpu.

Bug: skia:13118
Change-Id: Ib830643db7ee86262a695edbe6d91a05c3817fcd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535965
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Herb Derby <herb@google.com>
2022-05-02 17:07:43 +00:00
Michael Ludwig
7d9f07c108 Revert "Delete HW tessellation shaders for curve/wedge tessellation"
This reverts commit 038818ba8e.

Reason for revert: breaking g3 roll, need to update public bzl file I think

Original change's description:
> Delete HW tessellation shaders for curve/wedge tessellation
>
> GrPathTessellationShader_MiddleOut.cpp is just moved into
> GrPathTessellationShader.cpp, and a few factories are cleaned up since
> we don't have to differentiate between middle-out or hardware.
>
> Bug: skia:13263
> Change-Id: I420faa614a89ef1a2c0f1075d1f8a067d15e9a81
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534200
> Reviewed-by: Greg Daniel <egdaniel@google.com>
> Commit-Queue: Michael Ludwig <michaelludwig@google.com>

Bug: skia:13263
Change-Id: I42367a21c2bf1a4283e5d9b8d0e00961f9dea2e7
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/536039
Auto-Submit: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-05-02 17:01:08 +00:00
skia-autoroll
644fc2e540 Roll vulkan-deps from 1cde45b8d7aa to 717818ff1f86 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/1cde45b8d7aa..717818ff1f86

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-skia-autoroll
Please CC jlavrova@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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: jlavrova@google.com
Change-Id: Icafedf8017d2414aacec944633024d0b3dda11b1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535904
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-02 16:45:21 +00:00
Herb Derby
f1735e1b06 Add a Slug bot
Add a Mac Mini to test using GrSlug drawing instead of using
GrTextBlob for drawing.

Change-Id: I28ee402b7f82ae235518ee585d5803857490f8e1
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535964
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Herb Derby <herb@google.com>
2022-05-02 16:19:00 +00:00
Michael Ludwig
038818ba8e Delete HW tessellation shaders for curve/wedge tessellation
GrPathTessellationShader_MiddleOut.cpp is just moved into
GrPathTessellationShader.cpp, and a few factories are cleaned up since
we don't have to differentiate between middle-out or hardware.

Bug: skia:13263
Change-Id: I420faa614a89ef1a2c0f1075d1f8a067d15e9a81
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534200
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Michael Ludwig <michaelludwig@google.com>
2022-05-02 16:10:40 +00:00
Brian Salomon
8d502aea31 Check all conditions for shader wrap to disable aniso
In particular fixes issue on GLs that don't support non-clamp modes with
npot textures.

Bug: skia:13036
Change-Id: I196a6d726ac82cf9f6bb36b90a9b05f3a67837de
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535957
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-05-02 15:10:42 +00:00
Kevin Lubick
c3a448ec61 [bazel] Put licenses() after legacy_exports
G3 prefers license() first.

This was done mechanically with a big find/replace

Change-Id: I8c33c7bc10a6bec42e966cad81c259954e841811
Bug: skia:13211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535898
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-05-02 15:04:33 +00:00
Kevin Lubick
20ec056844 [bazel] Add missed includes
Change-Id: I0365745ff14cc0ed1c86fe4f9d06a46d98f74a48
Bug: skia:13211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535963
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-05-02 14:54:15 +00:00
Brian Salomon
ab7b006ea6 Enable anisotropic filtering in Dawn and D3D.
D3D: the filter mode was being enabled but the max was always 1.

Dawn: Everything was plumbed but caps wasn't enabled.

Bug: skia:13036
Change-Id: Ib432bb8bc4fa28eddd827dd8337d2592617a6f70
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535413
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Brian Salomon <bsalomon@google.com>
2022-05-02 14:43:16 +00:00
Kevin Lubick
fe01e985a7 Reland "Reland "[includes] Remove SkColorSpace include from SkImageInfo""
This is a reland of commit 00de8cc000

New client fixes:
 - http://cl/445903108

Original change's description:
> Reland "[includes] Remove SkColorSpace include from SkImageInfo"
>
> This is a reland of commit 2151fa37fa
>
> New client fixes:
>  - https://crrev.com/c/3616345
>
> Original change's description:
> > [includes] Remove SkColorSpace include from SkImageInfo
> >
> > See also https://skia-review.googlesource.com/c/skia/+/525639
> >
> > This should be landed when clients have been fixed.
> >  - https://github.com/flutter/engine/pull/32532
> >  - https://github.com/flutter/engine/pull/32382
> >  - http://cl/438808657
> >  - http://cl/438803822
> >  - http://cl/438807456
> >  - http://cl/438808026
> >  - http://cl/438821192
> >  - https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17542295
> >
> > Change-Id: I04beeb2e2b6132c40508c98f4f281981dadbb0d4
> > Bug: skia:13052
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526416
> > Commit-Queue: Kevin Lubick <kjlubick@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
>
> Canary-Chromium-CL: 3616345
> Bug: skia:13052
> Change-Id: I670d3d0d0bab2a86559d9a1184cb36ef008196f3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535357
> Reviewed-by: Brian Salomon <bsalomon@google.com>

Bug: skia:13052
Change-Id: Ibb931dde3f0846609df35d2897989eff0499b7f9
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535896
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
2022-05-02 13:33:21 +00:00
Kevin Lubick
e3f11135d1 [bazel] Rewrite globs in public.bzl
globs prevent us from migrating G3 to use our BUILD.bazel files

See http://g/skia-staff/pFBydyFWoIU and http://cl/445404275
for more context.

Change-Id: I57aa445fef8ee00d345efa58f46e391db34a25d1
Bug: skia:13211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535176
Reviewed-by: Jorge Betancourt <jmbetancourt@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-05-02 13:10:14 +00:00
skia-autoroll
8a48c396c4 Roll ANGLE from 2c58e7a5bab7 to e55990e35ddc (13 revisions)
2c58e7a5ba..e55990e35d

2022-05-01 gert.wollny@collabora.com Capture/Replay: Handle arrays with uniform block indices
2022-05-01 gert.wollny@collabora.com gl_tests: Fix formatting
2022-04-30 syoussefi@chromium.org Vulkan: Remove syncval suppressions no longer triggering
2022-04-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from a22069b4e3b7 to 106df4122297 (1 revision)
2022-04-29 syoussefi@chromium.org Vulkan: Fix syncval errors with DONT_CARE for unused attachments
2022-04-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 1e97e6cd1c3c to 3a1ff9044aec (639 revisions)
2022-04-29 brianosman@google.com Add option for Metal output to angle_shader_translator
2022-04-29 cclao@google.com Vulkan: Don't take lock for getLastCompletedQueueSerial
2022-04-29 cnorthrop@google.com Tests: Add GFXBench Driver Overhead 2 trace
2022-04-29 lubosz.sarnecki@collabora.com Tests: Add Jetpack Joyride trace.
2022-04-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b92f7acb7e81 to adef92e7b4c6 (4 revisions)
2022-04-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 1963b94c99e8 to 7b51f5f85aad (4 revisions)
2022-04-29 gert.wollny@collabora.com Capture/Replay: Fix formatting

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 jlavrova@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: jlavrova@google.com
Test: Test: angle_perftests --gtest_filter="*driver_overhead_2*"
Test: Test: angle_perftests --gtest_filter="*jetpack_joyride*"
Change-Id: I76c7be42af90c2a4926377f46f6390cc33c50992
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535841
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-02 05:25:16 +00:00
skia-autoroll
75ff27976f Roll Chromium from 2aa54824f810 to fa9bb0812095 (683 revisions)
2aa54824f8..fa9bb08120

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

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/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:Perf-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Release-All-CommandBuffer;skia/skia.primary:Test-Mac10.13-Clang-MacBookPro11.5-GPU-RadeonHD8870M-x86_64-Debug-All-CommandBuffer
Tbr: jlavrova@google.com
Change-Id: I19c249e4d7ca86fa96ec0cab77bff0143cd86c0f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535842
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-02 05:06:22 +00:00
skia-autoroll
c7a5fccf58 Roll SwiftShader from adef92e7b4c6 to 6fb4e0498abd (3 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/adef92e7b4c6..6fb4e0498abd

2022-04-29 capn@google.com Always enable MemorySanitizer instrumentation for sampling routines
2022-04-29 ari.suonpaa@siru.fi Fix heap corruption for empty descriptor pools
2022-04-29 capn@google.com Always enable MemorySanitizer instrumentation for blitter routines

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 jlavrova@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: jlavrova@google.com
Change-Id: I9ca79cb0cb1fd10073529d56365ac6bbda177845
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535840
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-05-02 04:53:27 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
c58e0ba36c Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: Ia0e7f83d87b98af2920e04b0740523dbf9f9cc1f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535756
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-05-01 08:14:29 +00:00
skia-autoroll
fa9b8b6bd6 Roll vulkan-deps from 88693e6bf86c to 1cde45b8d7aa (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/88693e6bf86c..1cde45b8d7aa

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/vulkan-deps-skia-autoroll
Please CC bsalomon@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

Cq-Include-Trybots: skia/skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn;skia/skia.primary:Build-Debian10-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE
Bug: None
Tbr: bsalomon@google.com
Change-Id: I2535e64f0bb3c64ffbdf1c60dcfebec25066e0ab
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535624
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-30 06:21:33 +00:00
Arman Uguray
c987606ad2 Roll emsdk to 3.1.9
Rolled emsdk to the latest version to get the updated WebGPU wasm
bindings to fix deprecated WebGPU API usage in the ganesh Dawn backend.
The latest WebGPU headers also define the WGPU_WHOLE_MAP_SIZE constant
which is necessary to land a workaround for skia:13266.

* Roll emsdk to 3.1.9
* Fix Dawn backend to use the updated WebGPU API
* Fix -Wunused-but-set-variable warnings

Bug: skia:13220, skia:13266
Change-Id: I57ad39657c3013f384620302ab12a71ffc426c12
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534945
Commit-Queue: Arman Uguray <armansito@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2022-04-29 22:31:29 +00:00
Brian Osman
05dd660fee Revert "Reland "[includes] Remove SkColorSpace include from SkImageInfo""
This reverts commit 00de8cc000.

Reason for revert: G3 Breakage?

Original change's description:
> Reland "[includes] Remove SkColorSpace include from SkImageInfo"
>
> This is a reland of commit 2151fa37fa
>
> New client fixes:
>  - https://crrev.com/c/3616345
>
> Original change's description:
> > [includes] Remove SkColorSpace include from SkImageInfo
> >
> > See also https://skia-review.googlesource.com/c/skia/+/525639
> >
> > This should be landed when clients have been fixed.
> >  - https://github.com/flutter/engine/pull/32532
> >  - https://github.com/flutter/engine/pull/32382
> >  - http://cl/438808657
> >  - http://cl/438803822
> >  - http://cl/438807456
> >  - http://cl/438808026
> >  - http://cl/438821192
> >  - https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17542295
> >
> > Change-Id: I04beeb2e2b6132c40508c98f4f281981dadbb0d4
> > Bug: skia:13052
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526416
> > Commit-Queue: Kevin Lubick <kjlubick@google.com>
> > Reviewed-by: Brian Salomon <bsalomon@google.com>
>
> Canary-Chromium-CL: 3616345
> Bug: skia:13052
> Change-Id: I670d3d0d0bab2a86559d9a1184cb36ef008196f3
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535357
> Reviewed-by: Brian Salomon <bsalomon@google.com>

Bug: skia:13052
Change-Id: Ie2d036f0bfcdb481c4227a6d567e38d527c81168
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535202
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Auto-Submit: Brian Osman <brianosman@google.com>
Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
2022-04-29 22:17:12 +00:00
Arman Uguray
7bc9970941 [experimental] Add runtime effects to WebGPU demo
Added a radial gradient and a RuntimeEffect to the WebGPU demo.
Both of these exercise shader creation and staging buffer allocation.

Also refactored the C++ code to reuse a GrDirectContext which highly
improves the per-frame performance when using runtime effects. However
this unfortunately triggers skbug.com/13266 so a work-around has been
provided in which the context can conditionally get re-created every
frame, as before.

Bug: skia:12512

Change-Id: Ic3e71679bf449bd8557577f74001f18e300e952a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534756
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-04-29 21:42:06 +00:00
Arman Uguray
8cfcfaecb6 [experimental] Update WebGPU/Bazel demo
* Made several changes to the Bazel rules to work around an issue with
the Closure compiler and Asyncify and a WASM code-size issue on debug
builds.

* The native draw code now invokes Skia using the Dawn backend. The
example uses `SkSurface::flushAndSubmit` and Emscripten's Asyncify
feature to synchronize animation frames with the underlying WebGPU
command queue completion.

* Cosmetic changes to the HTML with CSS and an animation loop that
alternates the canvas color between cyan and magenta every second.

Bug: skia:12512
Change-Id: I9888bbec89c2fb01676898ffe4a7071d8690611e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/530856
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-04-29 21:07:31 +00:00
Brian Salomon
795d87486b Manual roll Dawn from 7098d3d69282 to cede544df34f (38 revisions)
https://dawn.googlesource.com/dawn.git/+log/7098d3d69282..cede544df34f

2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 8234ec2dd0ae to c9e605688988 (2 revisions)
2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 9f2ef7c8b867 to adef92e7b4c6 (3 revisions)
2022-04-29 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 2a6e123b16ff to 437053a1635b (5 revisions)
2022-04-29 jrprice@google.com tint: Refactor if-else statement representation
2022-04-28 bclayton@google.com tools: Add src/cts/expectations
2022-04-28 enga@chromium.org Fix 64 to 32 bit narrowing in dawn/utils
2022-04-28 lokokung@google.com Add multiple device testing capability in DawnTest.
2022-04-28 cwallez@chromium.org Add MetalRenderR8RG8UnormSmallMipToTempTexture workaround
2022-04-28 bclayton@google.com tint: Remove '_type' suffix from file names
2022-04-28 bclayton@google.com tint/writer/spirv: Replace Operand with std::variant
2022-04-28 enga@chromium.org Fix 64 to 32 bit narrowing in dawn/common
2022-04-28 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 1963b94c99e8 to 8234ec2dd0ae (1 revision)
2022-04-28 dsinclair@chromium.org Cleanup duplicate files; Combine README and build docs.
2022-04-28 bclayton@google.com tint/writer: Replace scope_stack_, fix type ctor scoping.
2022-04-28 cwallez@chromium.org GN: Rely on the Chromium macOS deployment target again.
2022-04-28 amaiorano@google.com tint: regen skips for hlsl files that were missing error message in the output
2022-04-28 bclayton@google.com tint: ProgramBuilder: Rename Const() to Let()
2022-04-28 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from b92f7acb7e81 to 9f2ef7c8b867 (1 revision)
2022-04-28 bclayton@google.com Roll third_party/webgpu-cts/ 900765392..21af43c62 (10 commits)
2022-04-28 bclayton@google.com tint/writer: Replace use of strings for cache keys
2022-04-28 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from c95bd5e7e882 to 2a6e123b16ff (43 revisions)
2022-04-28 bclayton@google.com tools: Move go.mod & go.sum files to root
2022-04-28 dsinclair@chromium.org Rename UniformConstant to Handle.
2022-04-28 bclayton@google.com DEPS: Update Dawn standalone toolchains
2022-04-28 lokokung@google.com Fix freed memory access due to DestroyObjects.
2022-04-28 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 78787fde6ea0 to 1963b94c99e8 (1 revision)
2022-04-28 bajones@chromium.org Surface D3D12 validation messages in WebGPU errors
2022-04-28 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from f88fc3b53c52 to b92f7acb7e81 (3 revisions)
2022-04-27 enga@chromium.org Fix 64 to 32 bit narrowing in dawn::wire
2022-04-27 senorblanco@chromium.org OpenGL ES: implement support for BGRA textures and reads.
2022-04-27 cwallez@chromium.org Suppress a flake for RGBA32Float zero init on Intel.
2022-04-27 cwallez@chromium.org Metal: Move Metal render pass workarounds to UtilsMetal
2022-04-27 bclayton@google.com Roll third_party/webgpu-cts/ e23ca12d5..900765392 (15 commits)
2022-04-27 cwallez@chromium.org Tighten the suppression for texture_zero failures.
2022-04-27 cwallez@chromium.org Remove test suppressions due to SPIRV-Cross
2022-04-27 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from e799ba9fb972 to 78787fde6ea0 (2 revisions)
2022-04-27 zhaoming.jiang@intel.com tint: Add `i` suffix and validate UInt literal non-negative
2022-04-27 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 79d4c6cae485 to f88fc3b53c52 (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 bclayton@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
Change-Id: Ib512ef51f56e93838dcb606b688179fa17170091
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535537
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-29 20:35:34 +00:00
skia-autoroll
003dbd6eb2 Roll SK Tool from d568b1e2748e to 4a9fb9cfed2c
https://skia.googlesource.com/buildbot.git/+log/d568b1e2748e..4a9fb9cfed2c

2022-04-29 jcgregorio@google.com Remove all references to a manually installed mockery.

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 borenet@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: borenet@google.com
Change-Id: I6b13b809dd89c6ee1204b562db4837f3b649c34e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535619
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
2022-04-29 20:35:21 +00:00
Derek Sollenberger
6a810fe45b Fix bug where SkQP test that are always to be excluded are not.
Also exclude some additional test cases based on data collected
from Skia's infrastructure for known problematic GPU test cases.

Bug: b/230879386
Bug: b/227806494
Change-Id: Id0bf73828fa04b3139f1e9cb94511db9d62d8d86
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535578
Auto-Submit: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Leon Scroggins <scroggo@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
2022-04-29 20:26:54 +00:00
Brian Salomon
c8ee7b1384 Reland "Reland "Add anisotropic option to SkSamplingOptions.""
This is a reland of commit e6f23f98de

Original change's description:
> Reland "Add anisotropic option to SkSamplingOptions."
>
> This is a reland of commit 9be2d572d4
>
> Original change's description:
> > Add anisotropic option to SkSamplingOptions.
> >
> > Implement on GPU.
> >
> > Bug: skia:13036
> > Change-Id: I35d760596c4f8faaec27fccf284b70802fcf3f9b
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524757
> > Commit-Queue: Brian Salomon <bsalomon@google.com>
> > Reviewed-by: Brian Osman <brianosman@google.com>
> > Reviewed-by: Michael Ludwig <michaelludwig@google.com>
>
> Bug: skia:13036
> Change-Id: I3e411aae389dc880ce32bba78852705059fb88b0
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535197
> Reviewed-by: Brian Osman <brianosman@google.com>
> Commit-Queue: Brian Salomon <bsalomon@google.com>

Bug: skia:13036
Change-Id: Icb2513cea6c4ec4cec934f78c66071081c232960
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535437
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
2022-04-29 19:28:52 +00:00
Kevin Lubick
46eaab3959 [bazel] Add shims to help translation into G3
Ran the following commands:
find -name "BUILD.bazel" -exec sed -i -e '1iload("//bazel:macros.bzl", "cc_library", "exports_files_legacy")\nexports_files_legacy()' {} +
buildifier --lint=fix --mode=fix -r .

This had the effect of making sure we can export all of our
files in G3 (until we no longer have legacy targets) and
making all of our cc_libraries shim-able.

bazel/macros.bzl has the human-contributed changes, the rest
were mechanical.

Change-Id: I8e24e30e74b038cfd072cdbe4078bfd1d213dd46
Bug: skia:13211
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535359
Reviewed-by: Ben Wagner <bungeman@google.com>
2022-04-29 19:27:54 +00:00
Brian Salomon
4dbd4ba474 Fix fiddles that use backEndTexture and backEndTextureRenderTarget
Bug: skia:13250
Change-Id: I8912c1c535c77a3465b9af5ebdb23531c0060300
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535576
Commit-Queue: Brian Salomon <bsalomon@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2022-04-29 19:22:10 +00:00
James Godfrey-Kittle
a49fcb47c0 [graphite] Check for texture binding state changes in draw pass
Accidentally left out of a7c2d73.

Change-Id: I237f8734758def36badd33f63ff32859d4ae670e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/535440
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: James Godfrey-Kittle <jamesgk@google.com>
2022-04-29 18:45:43 +00:00
John Stiles
59c906795c Remove InlineMarker IR node.
This node was only used to detect recursion while inlining. We no longer
need to do this, because we disallow recursion in all programs.

The removal of one IRNode per inlined function actually allows for
slightly more aggressive inlining, since we restrict inlining based on
IRNode consumption. This allows the "ExponentialGrowth" tests to inline
a bit more deeply than before.

Change-Id: I894dbb1ca3096bb785b67facb01cc9c630f694c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/534780
Reviewed-by: Arman Uguray <armansito@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-29 17:40:58 +00:00