Roll Dawn from 8f8193a59b53 to 98844beffb30 (17 revisions)

Includes a manual update of wgsl test files by running:

bazel run //tools/skslc:compile_wgsl_tests

https://dawn.googlesource.com/dawn.git/+log/8f8193a59b53..98844beffb30

2024-04-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 2de6ed73d27e to ff03a7b193da (8 revisions)
2024-04-03 jie.a.chen@intel.com d3d11: Emulate upload buffers using system memory
2024-04-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Manual roll Depot Tools from e545830db2fb to 1a9ea5caf5d7 (7 revisions)
2024-04-03 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 3b1638b6e598 to 432730a5288e (1 revision)
2024-04-03 jiawei.shao@intel.com Fix dangling pointer in CreatePipelineAsync
2024-04-03 bsheedy@google.com Add/modify more worker expectations
2024-04-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ff61926fcedb to 62c59c41e194 (1 revision)
2024-04-02 shrekshao@google.com Fix BGRA8Unorm storage texture validation
2024-04-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll ANGLE from 4d317b52ebcf to 2de6ed73d27e (4 revisions)
2024-04-02 dsinclair@chromium.org Add missing switch entries.
2024-04-02 bclayton@google.com [tint][wgsl] Polish struct address space diagnostic messages
2024-04-02 bclayton@google.com [tint] Add var tests for nested structs
2024-04-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll Depot Tools from 2d6b598b7af1 to e545830db2fb (7 revisions)
2024-04-02 enga@chromium.org Replace DAWN_UNUSED with [[maybe_unused]]
2024-04-02 dawn-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 319732cc90e4 to 3b1638b6e598 (3 revisions)
2024-04-02 beaufort.francois@gmail.com Handle dedicated, service, and shared workers
2024-04-02 cwallez@chromium.org Various cleanups to CMake files.

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,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://issues.skia.org/issues/new?component=1389291&template=1850622

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-Graphite_Dawn_Vulkan;skia/skia.primary:Test-Mac11-Clang-MacMini9.1-GPU-AppleM1-arm64-Debug-All-Graphite_Dawn_Metal;skia/skia.primary:Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Release-All-Graphite_Dawn_D3D12;skia/skia.primary:Test-Win10-MSVC-Golo-GPU-QuadroP400-x86_64-Release-All-Graphite_Dawn_D3D11
Bug: None
Tbr: bclayton@google.com
Change-Id: I5247b44cda432b0f46efff41b71946c58ff51327
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/835876
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
diff --git a/DEPS b/DEPS
index 2732777..890be79 100644
--- a/DEPS
+++ b/DEPS
@@ -28,7 +28,7 @@
   "third_party/externals/d3d12allocator"         : "https://skia.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/D3D12MemoryAllocator.git@169895d529dfce00390a20e69c2f516066fe7a3b",
   # Dawn requires jinja2 and markupsafe for the code generator, tint for SPIRV compilation, and abseil for string formatting.
   # When the Dawn revision is updated these should be updated from the Dawn DEPS as well.
-  "third_party/externals/dawn"                   : "https://dawn.googlesource.com/dawn.git@8f8193a59b530ba5f1f35c4b6bc826eaae8b63c7",
+  "third_party/externals/dawn"                   : "https://dawn.googlesource.com/dawn.git@98844beffb3063b883745469835d9c41804dc6c8",
   "third_party/externals/jinja2"                 : "https://chromium.googlesource.com/chromium/src/third_party/jinja2@e2d024354e11cc6b041b0cff032d73f0c7e43a07",
   "third_party/externals/markupsafe"             : "https://chromium.googlesource.com/chromium/src/third_party/markupsafe@0bad08bb207bbfc1d6f3bbc82b9242b0c50e5794",
   "third_party/externals/abseil-cpp"             : "https://skia.googlesource.com/external/github.com/abseil/abseil-cpp.git@334aca32051ef6ede2711487acf45d959e9bdffc",
diff --git a/bazel/deps.bzl b/bazel/deps.bzl
index 0d25df8..193a326 100644
--- a/bazel/deps.bzl
+++ b/bazel/deps.bzl
@@ -30,7 +30,7 @@
     new_git_repository(
         name = "dawn",
         build_file = ws + "//bazel/external/dawn:BUILD.bazel",
-        commit = "8f8193a59b530ba5f1f35c4b6bc826eaae8b63c7",
+        commit = "98844beffb3063b883745469835d9c41804dc6c8",
         remote = "https://dawn.googlesource.com/dawn.git",
     )
 
diff --git a/tests/sksl/intrinsics/Fma.wgsl b/tests/sksl/intrinsics/Fma.wgsl
index b02d9bd..9c1d5aa 100644
--- a/tests/sksl/intrinsics/Fma.wgsl
+++ b/tests/sksl/intrinsics/Fma.wgsl
@@ -4,23 +4,15 @@
   testArray: array<f32, 5>,
              ^^^^^^^^^^^^^
 
-:6:1 note: see layout of struct:
+:6:8 note: see layout of struct:
 /*            align(16) size(64) */ struct _GlobalUniforms {
-/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>;
-/* offset(16) align(16) size(16) */   colorRed : vec4<f32>;
-/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>;
-/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --;
+/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>,
+/* offset(16) align(16) size(16) */   colorRed : vec4<f32>,
+/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>,
+/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --
 /*                               */ };
 struct _GlobalUniforms {
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorGreen: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorRed: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^
-  testArray: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-};
-^
+       ^^^^^^^^^^^^^^^
 
 :11:23 note: '_GlobalUniforms' used in address space 'uniform' here
 @binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms;
diff --git a/tests/sksl/shared/ArrayComparison.wgsl b/tests/sksl/shared/ArrayComparison.wgsl
index 1bc1dac..a70810c 100644
--- a/tests/sksl/shared/ArrayComparison.wgsl
+++ b/tests/sksl/shared/ArrayComparison.wgsl
@@ -4,26 +4,16 @@
   testArray: array<f32, 5>,
              ^^^^^^^^^^^^^
 
-:6:1 note: see layout of struct:
+:6:8 note: see layout of struct:
 /*            align(16) size(80) */ struct _GlobalUniforms {
-/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>;
-/* offset(16) align(16) size(16) */   colorRed : vec4<f32>;
-/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>;
-/* offset(52) align( 4) size(20) */   testArrayNegative : array<f32, 5>;
-/* offset(72) align( 1) size( 8) */   // -- implicit struct size padding --;
+/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>,
+/* offset(16) align(16) size(16) */   colorRed : vec4<f32>,
+/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>,
+/* offset(52) align( 4) size(20) */   testArrayNegative : array<f32, 5>,
+/* offset(72) align( 1) size( 8) */   // -- implicit struct size padding --
 /*                               */ };
 struct _GlobalUniforms {
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorGreen: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorRed: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^
-  testArray: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-  testArrayNegative: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-};
-^
+       ^^^^^^^^^^^^^^^
 
 :12:23 note: '_GlobalUniforms' used in address space 'uniform' here
 @binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms;
diff --git a/tests/sksl/shared/ConstantCompositeAccessViaConstantIndex.wgsl b/tests/sksl/shared/ConstantCompositeAccessViaConstantIndex.wgsl
index 9c57c14..2f9211c 100644
--- a/tests/sksl/shared/ConstantCompositeAccessViaConstantIndex.wgsl
+++ b/tests/sksl/shared/ConstantCompositeAccessViaConstantIndex.wgsl
@@ -4,23 +4,15 @@
   testArray: array<f32, 5>,
              ^^^^^^^^^^^^^
 
-:6:1 note: see layout of struct:
+:6:8 note: see layout of struct:
 /*            align(16) size(64) */ struct _GlobalUniforms {
-/* offset( 0) align(16) size(16) */   colorRed : vec4<f32>;
-/* offset(16) align( 8) size(16) */   testMatrix2x2 : mat2x2<f32>;
-/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>;
-/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --;
+/* offset( 0) align(16) size(16) */   colorRed : vec4<f32>,
+/* offset(16) align( 8) size(16) */   testMatrix2x2 : mat2x2<f32>,
+/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>,
+/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --
 /*                               */ };
 struct _GlobalUniforms {
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorRed: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^
-  testMatrix2x2: mat2x2<f32>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-  testArray: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-};
-^
+       ^^^^^^^^^^^^^^^
 
 :11:23 note: '_GlobalUniforms' used in address space 'uniform' here
 @binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms;
diff --git a/tests/sksl/shared/StructComparison.wgsl b/tests/sksl/shared/StructComparison.wgsl
index 33e06ac..b30591c 100644
--- a/tests/sksl/shared/StructComparison.wgsl
+++ b/tests/sksl/shared/StructComparison.wgsl
@@ -4,23 +4,15 @@
   testArray: array<f32, 5>,
              ^^^^^^^^^^^^^
 
-:6:1 note: see layout of struct:
+:6:8 note: see layout of struct:
 /*            align(16) size(64) */ struct _GlobalUniforms {
-/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>;
-/* offset(16) align(16) size(16) */   colorRed : vec4<f32>;
-/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>;
-/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --;
+/* offset( 0) align(16) size(16) */   colorGreen : vec4<f32>,
+/* offset(16) align(16) size(16) */   colorRed : vec4<f32>,
+/* offset(32) align( 4) size(20) */   testArray : array<f32, 5>,
+/* offset(52) align( 1) size(12) */   // -- implicit struct size padding --
 /*                               */ };
 struct _GlobalUniforms {
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorGreen: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorRed: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^
-  testArray: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-};
-^
+       ^^^^^^^^^^^^^^^
 
 :11:23 note: '_GlobalUniforms' used in address space 'uniform' here
 @binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms;
diff --git a/tests/sksl/shared/UniformArray.wgsl b/tests/sksl/shared/UniformArray.wgsl
index 41aac64..807104a 100644
--- a/tests/sksl/shared/UniformArray.wgsl
+++ b/tests/sksl/shared/UniformArray.wgsl
@@ -4,23 +4,15 @@
   testArray: array<f32, 5>,
              ^^^^^^^^^^^^^
 
-:6:1 note: see layout of struct:
+:6:8 note: see layout of struct:
 /*            align(16) size(64) */ struct _GlobalUniforms {
-/* offset( 0) align( 4) size(20) */   testArray : array<f32, 5>;
-/* offset(20) align( 1) size(12) */   // -- implicit field alignment padding --;
-/* offset(32) align(16) size(16) */   colorGreen : vec4<f32>;
-/* offset(48) align(16) size(16) */   colorRed : vec4<f32>;
+/* offset( 0) align( 4) size(20) */   testArray : array<f32, 5>,
+/* offset(20) align( 1) size(12) */   // -- implicit field alignment padding --
+/* offset(32) align(16) size(16) */   colorGreen : vec4<f32>,
+/* offset(48) align(16) size(16) */   colorRed : vec4<f32>,
 /*                               */ };
 struct _GlobalUniforms {
-^^^^^^^^^^^^^^^^^^^^^^^^
-  testArray: array<f32, 5>,
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-  colorGreen: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^^^
-  colorRed: vec4<f32>,
-^^^^^^^^^^^^^^^^^^^^^^
-};
-^
+       ^^^^^^^^^^^^^^^
 
 :11:23 note: '_GlobalUniforms' used in address space 'uniform' here
 @binding(0) @group(0) var<uniform> _globalUniforms: _GlobalUniforms;