Commit Graph

10106 Commits

Author SHA1 Message Date
Dawn Autoroller 0c2bdac445 Roll ANGLE from 91850a24e8f8 to c394adfc2ce5 (4 revisions)
91850a24e8..c394adfc2c

2022-08-25 gert.wollny@collabora.com ANGLE: reorder program and shader creation
2022-08-24 bryantchandler@chromium.org Rename README.angle to README.chromium
2022-08-24 cclao@google.com Vulkan: Always enable mVirtualBlockMutex
2022-08-24 eddiehatfield@google.com Add unimplemented GLX entry points to desktop GL

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: Ic58afbd8962343a434f5ede2320a5cd92dae1e1e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100400
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-25 11:59:27 +00:00
Dawn Autoroller 6a8115896a Roll SwiftShader from 16da29a6b185 to 6517262b2386 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/16da29a6b185..6517262b2386

2022-08-25 capn@google.com Clarify negativeOneToOne depth clipping comments
2022-08-24 syoussefi@google.com Implement VK_EXT_depth_clip_control

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I576be4d99aaab32affcd497d0fb0950865377c14
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100380
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-25 04:52:45 +00:00
dawn-autoroll 4b01470020 Roll vulkan-deps from 188a44aaa198 to e623f608cbf3 (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/188a44aaa198..e623f608cbf3

Changed dependencies:
* spirv-headers: 0bcc624926..93754d52d6
* vulkan-validation-layers: dd4f17a7b9..b87209ca72

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-dawn-autoroll
Please CC rharrison@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 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

Bug: None
Tbr: rharrison@google.com
Change-Id: Ic128cb2076016fe8447574c2b77f7c5c68afc586
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100342
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-25 01:02:28 +00:00
Dawn Autoroller 2e8416be25 Roll ANGLE from 94a23a4ed652 to 91850a24e8f8 (8 revisions)
94a23a4ed6..91850a24e8

2022-08-24 jmadill@chromium.org Add flaky reties to Mac GL dEQP-GLES 2 & 3 tests.
2022-08-24 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 02dbf021e1a1 to 5377f9824cad (537 revisions)
2022-08-24 cnorthrop@google.com Test: Add Antutu Refinery trace
2022-08-24 thomasanderson@chromium.org Fix build with -Wextra-semi
2022-08-24 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 1b46e43d5ccc to 188a44aaa198 (8 revisions)
2022-08-24 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from c21aa26e0256 to 67f88061d2d4 (1 revision)
2022-08-24 eddiehatfield@google.com Enable desktop GLSL for desktop GL frontend
2022-08-24 ynovikov@chromium.org Skip EGLMultiContextTest.ReuseUnterminatedDisplay on Pixel 4 GLES

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: If8294d0ac895ff1ef593684ab932607ced7fcae8
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100360
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-24 22:33:26 +00:00
dan sinclair 7517e213cf Update `workgroup_size` to use `expression`.
This CL updates the `workgroup_size` attribute to use `expression`
values instead of `primary_expression`.

Bug: tint:1633
Change-Id: I0afbabd8ee61943469f04a55d56f85920563e2da
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99960
Reviewed-by: Ben Clayton <bclayton@chromium.org>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-24 21:31:45 +00:00
dan sinclair 436b4a2bd0 Drop `maybe_` from method names.
With the old grammar elements removed, rename the new elements and
drop the `maybe_` prefixes.

Bug: tint:1633
Change-Id: Iafe223546f8af1ddd8a4b60572a106160a226b72
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99921
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-24 19:11:55 +00:00
dan sinclair 202362f47d Convert to new expression grammar
This CL moves all the grammar rules to use the new
`maybe_expression` rules. All of the old `expression` rules
are removed.

Bug: tint:1633
Change-Id: I29637a4c6fcd200650a2b57011b6539c66be942a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99920
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-24 18:05:26 +00:00
dan sinclair acdf6e1a53 Remove `ast::VariableBindingPoint` in favour of `sem::BindingPoint`.
This CL removes `VariableBindingPoint`. The `Variable` object has a
`has_binding_point` method added which returns true if there is
_both_ a `Group` and `Binding` attribute. Code has all been updated
to use the `sem::BindingPoint` which is populated during the resolve.

Bug: tint:1633
Change-Id: I79a0da662be61d5fb1c1b61342ab239cc4c66809
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100240
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-24 15:47:25 +00:00
Ben Clayton 98d7eb4009 Roll third_party/webgpu-cts/ e204a3c37..c0c5cce30 (7 commits)
Update:
 - expectations.txt
 - ts_sources.txt
 - resource_files.txt
 - webtest .html files


e204a3c377..c0c5cce305
 - c0c5cc Remove pushing lists of numbers through Set to guarantee uniqueness (#1779)
 - 3d958d wgsl: Replace module-scope 'let' with 'const' (#1721)
 - 4827c0 Add storage_texture,layout_dimension test to createBindGroupLayout.spec.ts (#1772)
 - dcdeec Add visibility,VERTEX_shader_stage_storage_texture_access test to createBindGroupLayout.spec.ts (#1770)
 - f4db91 Make F32Interval unittests more idiomatic (#1773)
 - d82d4e Updates error scope tests and remove outdated README. (#1766)
 - f102e6 Add brackets to robust buffer access test.

Created with './tools/run cts roll'

Change-Id: Ib5ca02d41a7638c06361e8e33b23f1ceb32db884
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel,linux-dawn-rel,mac-dawn-rel,win-dawn-rel
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100200
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2022-08-24 15:24:45 +00:00
Dawn Autoroller 1e21da523e Roll SwiftShader from 67f88061d2d4 to 16da29a6b185 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/67f88061d2d4..16da29a6b185

2022-08-24 nicolas.capens@gmail.com Consistently print bitmasks as hexadecimal

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I070b8f6a87e32e2a27a6d967406ccd3102830faf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100300
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-24 14:12:45 +00:00
dawn-autoroll cd8f499424 Roll vulkan-deps from e1b5a3034c24 to 188a44aaa198 (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/e1b5a3034c24..188a44aaa198

Changed dependencies:
* spirv-cross: 61c603f3ba..c93ee9261e

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-dawn-autoroll
Please CC rharrison@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 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

Bug: None
Tbr: rharrison@google.com
Change-Id: Ib7df589e8eab43609cd6c854065afe2f951adaa2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100281
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-24 11:35:25 +00:00
Dawn Autoroller b99628f520 Roll ANGLE from eab2d546ef07 to 94a23a4ed652 (8 revisions)
eab2d546ef..94a23a4ed6

2022-08-24 cnorthrop@google.com FrameCapture: Fix separable shader uniform locs
2022-08-24 cnorthrop@google.com FrameCapture: Fix cube face as framebuffer
2022-08-24 m.maiya@samsung.com Vulkan: Add support for setting timestamp surface attribute
2022-08-23 yuxinhu@google.com Enable Robustness Extension on ARM
2022-08-23 romanl@google.com Propagate device type in another eglGetPlatformDisplayEXT call.
2022-08-23 ynovikov@chromium.org Fix loading ANGLE libraries on iOS
2022-08-23 zzyiwei@chromium.org Extend the image test to verify RGBX AHB and GL_RGB upload
2022-08-23 zzyiwei@chromium.org Map RGBX AHB to GL_RGBX8_ANGLE and fix the load function

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I84eaf4109941f2b4256052ae5d01e58389e45d55
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100260
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-24 08:33:15 +00:00
Tom Anderson a85290b909 Fix build with -Wextra-semi
Change-Id: I48b8ca89dfe90e138fb6d9c00a69353a05f19cd2
Bug: chromium:1355871
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100241
Auto-Submit: Tom Anderson <thomasanderson@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Commit-Queue: Brandon Jones <bajones@chromium.org>
2022-08-24 00:03:35 +00:00
dawn-autoroll 3335875f2d Roll vulkan-deps from 1b46e43d5ccc to e1b5a3034c24 (7 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/1b46e43d5ccc..e1b5a3034c24

Changed dependencies:
* spirv-tools: 3c1a14b2b6..a98f05d02f
* vulkan-validation-layers: 55f77c5de1..dd4f17a7b9

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-dawn-autoroll
Please CC rharrison@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 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

Bug: None
Tbr: rharrison@google.com
Change-Id: Ic4eebaeef6b6eaba0d5fc173fcf8ac9246101b22
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100242
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-23 22:37:55 +00:00
Dawn Autoroller 55185fa6d1 Roll SwiftShader from c21aa26e0256 to 67f88061d2d4 (1 revision)
https://swiftshader.googlesource.com/SwiftShader.git/+log/c21aa26e0256..67f88061d2d4

2022-08-23 nicolas.capens@gmail.com Implement VK_EXT_rasterization_order_attachment_access support

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I3c8d6446bdbc7e638a3496f1a7bf67b9957d2c3a
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100220
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-23 21:07:05 +00:00
Ben Clayton 93c2d559a1 tint/utils: Default to using Hasher instead of std::hash
STL std::hash<T*> implementations have a tendency of just reinterpreting the
pointer as a size_t. This is fast, but produces a bad hash, as most pointers
tend to be 4 or 16 byte aligned. The lack of entropy in the LSBs causes
clustering of hashmap slots. Use tint::utils::Hasher to get better hashes.

Change-Id: Ife768d573cd1875e746ca9d77a4ac19e43b06aca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99281
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-08-23 19:09:34 +00:00
Ben Clayton 18dc315ccb tint::CloneContext: Use utils::Hashset and utils::Hashmap
For fewer heap allocations, faster lookups.

Also use a generational counter to cache `ListTransforms` map lookups between clones. Reduces repeated map lookups in super-hot code.

Change-Id: I34865bb39c756129be845b1eb6255ce436e275f7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99280
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2022-08-23 18:38:35 +00:00
Dawn Autoroller 32a1bce736 Roll ANGLE from 6fde3568a14f to eab2d546ef07 (2 revisions)
6fde3568a1..eab2d546ef

2022-08-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from 186a4d4b9dea to 1b46e43d5ccc (2 revisions)
2022-08-23 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from e1b4daf2a3e7 to 02dbf021e1a1 (568 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-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I12b6e33bb7a25a12b0c4e3c8cce82a11bd673e0c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100180
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-23 18:00:14 +00:00
Ben Clayton b90b6bff1d tint: Minor no-op cleanup changes
Change-Id: I91ad6044e7809ed2deab0fbd4417da90c7870d81
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99705
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-08-23 16:23:05 +00:00
Ben Clayton e3f2005b2d tint/utils: Cleanup & optimize hash utilities
Do less work for single-value hashes.
Specialize pointer hashing to improve hash quality.

Change-Id: I2f3839d15754543735728814c7f54a5e7ac81569
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99282
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2022-08-23 16:10:35 +00:00
Ben Clayton e5d337171a tint: Castable - optimize IsAnyOf()
`HashCodeOf()` sets two bits in the mask to `1`.
We can check for two bits set, after masking, to quickly eliminate impossible Is() tests.

Change-Id: I8d9c1ece87b714e83bd292d02e02274d42e143ef
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/92664
Commit-Queue: Ben Clayton <bclayton@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-23 15:39:15 +00:00
Ben Clayton cdcc85973b tint: Clean up AddSpirvBlockAttribute
* Walk the sem type list, instead of all AST nodes to just find the
  types.
* Walk the AST global list, instead of all declarations, then filtering
  to globals.
* Use the ast::IsHostSharable() helper where possible.
* Only lookup the sem node once instead of twice, per global.
* Use the new utils::Hashmap and utils::Hashset containers instead of
  std::unordered_map and std::unordered_set.

Change-Id: Idb47c855ae9dfd27515774a89cedb7ed06e07035
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100140
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
2022-08-23 14:30:24 +00:00
Ben Clayton bace05e499 Roll third_party/webgpu-cts/ ed11c6ba3..e204a3c37 (24 commits)
Update:
 - expectations.txt
 - ts_sources.txt
 - resource_files.txt
 - webtest .html files


ed11c6ba35..e204a3c377
 - e204a3 Add visibility,VERTEX_shader_stage_buffer_type test to createBindGroupLayout.spec.ts (#1767)
 - 2d7291 Change sourceOrigin in GPUImageCopyTexture from 3D to 2D (#1768)
 - fef5f1 Fix f16 and u32 testcases in webgpu:shader,validation,parse,literal:* (#1769)
 - 32bacf Add timestamp_query_set,device_mismatch test to beginRenderPass tests (#1761)
 - c48887 Add _mimeType for input videos in external_texture cases (#1759)
 - 8bd50a Use common `sparseF32Range` instead of defining it multiple different places (#1754)
 - 4e8df0 Add timestamp_query_set,device_mismatch test to beginComputePass tests (#1760)
 - 168bc9 Refactor *SubnormalNumber functions to not depends on *SubnormalScalar functions (#1755)
 - 581498 Implementing dot f32 tests (#1748)
 - 30e9e0 Add indirect_dispatch_buffer,usage validation test (#1756)
 - dd0150 Update compositingAlphaMode -> alphaMode (#1667)
 - 8a9afc Add a query_set_type test to beginComputePass tests (#1751)
 - 19aecd Track all the resources with trackForCleanup in copy and resource ini… (#1753)
 - 147d16 Add more texture usages to image_copy,texture_related:usage test (#1742)
 - 78ba78 Add beginComputePass validation test (#1744)
 - 2fe73f Implement `asinh` f32 tests (#1746)
 - 727a39 Implement `atanh` f32 tests (#1741)
 - e1795b Implement `acosh` f32 tests (#1737)
 - 583eaa Implementat `tanh` f32 tests (#1736)
 - b36ce1 Use containerss for alternate interval generators (#1740)
 - 242105 Update val:CopyExternalImageToTexture:OOB,source (#1739)
 - 40e52d upgrade typescript to 4.7.4 (#1713)
 - 2c9134 Implement GPURenderPassDescriptor.maxDrawCount test (#1693)
 - 05b229 Add 'VideoFrame' in 'SourceType' for external_texture cts (#1733)

Created with './tools/run cts roll'

Change-Id: Ib8bb7e412fd597ed7d56c493b40a227223f23765
Cq-Include-Trybots: luci.chromium.try:dawn-try-win10-x86-rel,linux-dawn-rel,mac-dawn-rel,win-dawn-rel
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100040
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Dan Sinclair <dsinclair@chromium.org>
2022-08-23 13:32:24 +00:00
dan sinclair 4964d9bc20 Convert `@align` to hold an expression.
With the updated WGSL grammar the `@align` attribute takes an
expression instead of a value. This CL updates the internal data
structures to store an expression instead of an integer value.

The parser still only parses integers, they're just turned into
`IntLiteralExpressions` at the moment.

Bug: tint:1633
Change-Id: If34901798ed6ceaced354bc06ae9b6df875b700e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99980
Reviewed-by: Ben Clayton <bclayton@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-23 13:28:44 +00:00
dawn-autoroll b7cf9dd263 Roll vulkan-deps from 186a4d4b9dea to 1b46e43d5ccc (2 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/186a4d4b9dea..1b46e43d5ccc

Changed dependencies:
* vulkan-validation-layers: 40315fa5c0..55f77c5de1

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-dawn-autoroll
Please CC rharrison@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 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

Bug: None
Tbr: rharrison@google.com
Change-Id: I240b24a9f536bce943c0f9c85d540ee6772fbd7f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100120
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-23 09:44:54 +00:00
Dawn Autoroller d403bc8874 Roll ANGLE from f30cfd180919 to 6fde3568a14f (8 revisions)
f30cfd1809..6fde3568a1

2022-08-23 chris@rive.app Spec out the PLS client API
2022-08-22 m.maiya@samsung.com Vulkan: Bug fix related to pre-rotation code
2022-08-22 syoussefi@chromium.org Vulkan: Workaround ARM driver bug with dynamic vertex strides
2022-08-22 eddiehatfield@google.com Temporarily disable shader caching feature
2022-08-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll vulkan-deps from d53c356ad7d9 to 186a4d4b9dea (48 revisions)
2022-08-22 kkinnunen@apple.com Metal: Report Metal being available on iOS simulator
2022-08-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll VK-GL-CTS from 5a93cd60f33b to 435ebaff9214 (5 revisions)
2022-08-22 lfy@google.com Vulkan: Add feature to use PASS_THROUGH for EGL_NONE color spaces

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: I1a0622fffb0e8a14290254a906420878d4303f1c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100080
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-23 04:56:44 +00:00
dawn-autoroll cf2ac51987 Roll vulkan-deps from c6c1ac59e076 to 186a4d4b9dea (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/c6c1ac59e076..186a4d4b9dea

Changed dependencies:
* vulkan-validation-layers: 73996c17fb..40315fa5c0

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-dawn-autoroll
Please CC rharrison@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 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

Bug: None
Tbr: rharrison@google.com
Change-Id: I39bcb9ac89131d69ef18747e7d2f329e46cd7745
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100060
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-22 20:20:35 +00:00
dan sinclair 64b09959f7 Update `type_decl` and `primary_expression`
This CL updates the `type_decl` and `primary_expression` rules
to the new WGSL grammar.

Bug: tint:1633
Change-Id: Ifc457e01f43fe33e083fc8f9e316fdd02bfd87c3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99881
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 19:42:14 +00:00
dan sinclair 08d735e6a9 Add missing relational_expression.post.unary_expression checks.
This CL adds the missing checks and tests for `==` and `!=` into
the `relational_expression.post.unary_expression` grammar elements.

Bug: tint:1633
Change-Id: Ib5fbb42994ea12af133ca531989421fddc2393f2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99940
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-22 19:23:24 +00:00
dan sinclair a838e34954 Handle peeking past placeholder elements.
Currently when peeking, if there is placeholder then anything after
the `peek(0)` will be off by 1 position as the placeholder will
end up included in the index count.

This CL updates the peek routine to correctly skip over any
placeholder element between the current index and the requested
peek token.

Bug: tint:1633
Change-Id: Idd2905cc3b9c0a0dcbbcc94c0f6dd349b569ec3e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99900
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-22 19:19:44 +00:00
dan sinclair 393de082d3 Add `mat_prefix`, `vec_prefix`, `callable` and `type_decl_without_ident`
This CL adds the `mat_prefix`, `vec_prefix`, `callable` and
`type_decl_without_ident` constructuctions.

Bug: tint:1633
Change-Id: Id1fb0417f522b7da2ac6bd4441d17b0a35ae5f14
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99880
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 16:15:04 +00:00
Dawn Autoroller a34b10db38 Roll ANGLE from 31ac3fefdefa to f30cfd180919 (3 revisions)
31ac3fefde..f30cfd1809

2022-08-22 romanl@google.com Perf and gold tests detect test SKIPs from json results.
2022-08-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from 1c3dfde53353 to c21aa26e0256 (3 revisions)
2022-08-22 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 336269709208 to e1b4daf2a3e7 (602 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-dawn-autoroll
Please CC rharrison@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: rharrison@google.com
Change-Id: Ic62d3ba4800eaca629c9132068bebb80da1c2b4e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100001
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 16:04:04 +00:00
dan sinclair 9284f8ab55 Add test for let with complex constructor
This CL adds a let unittest with a complex constructor. The test
verifies the entire statement is parsed.

Bug: tint:1633
Change-Id: I56bb7c009efb5668aa41c9b7ec80dcde65c4ec40
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99863
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-22 16:02:19 +00:00
dan sinclair 96a7d5a6bd Add some parenthesis.
With the upcoming expression changes we need to put parenthesis around
boolean expressions which mix `&&` and `||`.

Bug: tint:1633
Change-Id: I7a304e5a23998d9977630c2d4466312be7ae169e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99862
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 15:59:34 +00:00
dan sinclair e76521153f Fixup shift_expression parsing.
This CL fixes the shift_expression to call the higher level math
expression instead of multiplicative_expression. This allows addition
in shift expressions along with multiplicative expressions.

Bug: tint:1633
Change-Id: I29414bfa540bff612110d5ea16c5c89222a5eb6b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99861
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 14:55:04 +00:00
dan sinclair ee25586aec Sync `expression` grammar element with WGSL spec.
This CL updates the `expression` grammar element with the WGSL
spec.

Bug: tint:1633
Change-Id: Iad1f16f5d73cf4d9ba53ef638aaad73418712403
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99822
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-22 14:06:44 +00:00
Dawn Autoroller a39e56c817 Roll ANGLE from b9c3c5d67567 to 31ac3fefdefa (1 revision)
b9c3c5d675..31ac3fefde

2022-08-22 syoussefi@chromium.org Lift suppression of passing test

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC alanbaker@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: alanbaker@google.com
Change-Id: I45034eaee2793984e04aeca5f68df7805f122f03
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/100000
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-22 03:10:44 +00:00
Dawn Autoroller 0d84a31364 Roll ANGLE from 9a25828113d5 to b9c3c5d67567 (1 revision)
9a25828113..b9c3c5d675

2022-08-19 kkinnunen@apple.com Metal: Fix MTLArgumentEncoder leak in InitArgumentBufferEncoder

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-dawn-autoroll
Please CC alanbaker@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: alanbaker@google.com
Change-Id: I7f8fc9970af738a6e3ba76c3fe00b9afbaa5a90f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99841
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-20 11:42:02 +00:00
dawn-autoroll 16791e67d5 Roll vulkan-deps from 691fb8dbe91e to c6c1ac59e076 (3 revisions)
https://chromium.googlesource.com/vulkan-deps.git/+log/691fb8dbe91e..c6c1ac59e076

Changed dependencies:
* vulkan-validation-layers: 11db0c72cc..73996c17fb

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-dawn-autoroll
Please CC alanbaker@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 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

Bug: None
Tbr: alanbaker@google.com
Change-Id: I566d81889dba92b8b112aeb12333a2c1f716f6a2
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99823
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-20 05:27:52 +00:00
Dawn Autoroller 12effbf2a6 Roll SwiftShader from 34acfd537616 to c21aa26e0256 (2 revisions)
https://swiftshader.googlesource.com/SwiftShader.git/+log/34acfd537616..c21aa26e0256

2022-08-19 nicolas.capens@gmail.com Simplify clipping of complex polygons
2022-08-19 nicolas.capens@gmail.com Update Vulkan headers to version 1.3.225

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/swiftshader-dawn-autoroll
Please CC alanbaker@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: alanbaker@google.com
Change-Id: Ie4c51fcbfcdeb29f1dc3c28d653bf55a9474bec3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99840
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-20 04:14:51 +00:00
Austin Eng a09d05c10b Make Adapter and Instance lifetimes more robust
Previously, we would get a use-after-free if you dropped the instance
before an adapter created from it. This CL fixes up the lifetimes
such that Device refs Adapter refs Instance. Instance uses a
cycle-breaking refcount so that it releases internal refs to its
adapters when the last external ref is dropped.

Bug: none
Change-Id: I5304ec86f425247d4c45ca342fda393cc19689e3
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99820
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
2022-08-20 02:22:41 +00:00
Dawn Autoroller 322bcf827a Roll ANGLE from 6d153b7d7dfb to 9a25828113d5 (4 revisions)
6d153b7d7d..9a25828113

2022-08-19 syoussefi@chromium.org Fix submit-count perf counter test on ARM
2022-08-19 syoussefi@chromium.org Reland "Vulkan: Use VK_EXT_primitive_topology_list_restart"
2022-08-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll SwiftShader from ab4bf6ad00d4 to 1c3dfde53353 (1 revision)
2022-08-19 angle-autoroll@skia-public.iam.gserviceaccount.com Roll Chromium from 7f3befa9aba1 to 336269709208 (495 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-dawn-autoroll
Please CC alanbaker@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 Dawn: https://bugs.chromium.org/p/dawn/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

Bug: None
Tbr: alanbaker@google.com
Change-Id: Ic8e7b9205dd4c12775facc957f467d410c7a472c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99723
Kokoro: Kokoro <noreply+kokoro@google.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
2022-08-19 22:35:52 +00:00
dan sinclair 158c85dab4 Add new relational rules to WGSL grammar.
This CL adds the `relational_expression.post.unary_expression` grammar
rule into the WGSL parser. A `shift_expression` helper and a
`relational_expression` helper are also added.

Note, the two helpers have `maybe_` as name prefixes. This will be
dropped when the old parser path is removed which current uses the
other versions of those names.

Bug: tint:1633
Change-Id: I6431edfe8fdb9f5a6eea804a7d6fa9a4982ea04e
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99761
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
2022-08-19 22:19:11 +00:00
dan sinclair 97e0c71eb6 Add new shift expression grammar rule.
This CL adds the `shift_expression.post.unary_expression` grammar
rule into the WGSL parser.

Bug: tint:1633
Change-Id: I833ddb05399afe8c792bd0b1abf3eda7f1d114e7
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99760
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-08-19 22:16:21 +00:00
dan sinclair 9d27ab7043 Update parser comments.
This CL updates a few parser comments to match spec.

Bug: tint:1633
Change-Id: I8cde5ea9a85f0ca58b914d2741ad131d1fa374c6
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99700
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
2022-08-19 22:07:23 +00:00
Ben Clayton d0ccb1aae6 tint/fuzzers: Add a fuzzer that tests concurrency
Currently triggers a bunch of simultaneous program writers, sharing the
same program.

Bug: tint:1651
Change-Id: I9114a3072fb14182f72d5823fa8120088c2ab167
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99802
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-19 21:33:01 +00:00
dan sinclair 2788becd09 Add `element_count_expression` to WGSL parser
This CL adds the `element_count_expression` and the requisite math
expression parsing to support along with tests.

Bug: tint:1633

Change-Id: I54ab37339754217f417f69dcd6140adbc14cbf83
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99560
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Dan Sinclair <dsinclair@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-19 21:26:01 +00:00
Ben Clayton 5d7de871b4 tint/writer/msl: Remove TODO and old logic
crbug.com/tint/1580 has been implemented for some time.
Remove the bodge to handle constant value lets.

Bug: tint:1580
Change-Id: I9a71ed8f91b6c9925fa0557bcb4c95d90461421f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99704
Commit-Queue: Antonio Maiorano <amaiorano@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
2022-08-19 20:07:22 +00:00
Ben Clayton 58794ae118 tint::ProgramBuilder: Simplify variable constructors
Expand the Option argument paradigm to:
* Remove the requirement to always pass a 'type' parameter. Type inferencing is the easier, and increasingly common way to declare a variable, so this prevents a whole lot of `nullptr` smell which negatively impacts readability.
* Accept attributes directly as arguments, removing the `utils::Vector{ ... }` smell.

Rename `ProgramBuilder::VarOptionals` to `VarOptions`, and add equivalent `LetOptions`, `ConstOptions` and `OverrideOptions`.

Clean up all the calls to `Var()`, `Let()`, `Const()` and `Override()`:
* Use the `Group()` and `Binding()` helpers where possible
* Removing `nullptr` type arguments
* Replace attribute vectors with the list of attributes.
* Remove already-defaulted `ast::StorageClass::kNone` arguments.
* Remove already-defaulted `ast::Access::kUndefined` arguments.

Finally, remove the `GroupAndBinding()` helper, which only existed because you needed to pass attributes as a vector.

Change-Id: I8890e4eb0ffac9f9df2207b28a6f02a163e34d96
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99580
Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Commit-Queue: Ben Clayton <bclayton@chromium.org>
2022-08-19 17:28:53 +00:00
dawn-autoroll fa289d3a83 Roll vulkan-deps from 41bdd557a6ae to 691fb8dbe91e (1 revision)
https://chromium.googlesource.com/vulkan-deps.git/+log/41bdd557a6ae..691fb8dbe91e

Changed dependencies:
* vulkan-validation-layers: 589efdfe57..11db0c72cc

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-dawn-autoroll
Please CC alanbaker@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 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

Bug: None
Tbr: alanbaker@google.com
Change-Id: Id6f849f98c9bff47158669e14b1aea1a3e16db92
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/99800
Commit-Queue: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Bot-Commit: Dawn Autoroller <dawn-autoroll@skia-public.iam.gserviceaccount.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2022-08-19 16:34:11 +00:00