commit | f83de0f6583483d76b647ad716702723ec276a42 | [log] [tgz] |
---|---|---|
author | Ben Clayton <bclayton@google.com> | Sat Feb 03 05:14:32 2024 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Sat Feb 03 05:14:32 2024 +0000 |
tree | c105b15c7c7989bc2fd5adecd8d98f19101113a2 | |
parent | 3bfe53c4d5e291d6148f0f9040724ba6619f50a5 [diff] |
[tint][ast] Fix DemoteToHelper with atomicCompareExchangeWeak() Since the resolver was able to parse 'untypable' builtin structures with https://dawn-review.googlesource.com/c/dawn/+/129482, some transforms (like PromoteInitializersToLet) are able to create lets of these 'untypeable' builtin types. The DemoteToHelper transform had its own workaround for the 'untypeable' atomicCompareExchangeWeak() result type, by creating a user-declared structure with the same shape. This workaround can fail if a previous transform builds a variable with the 'untypeable' result type, as the user-declared type cannot be assigned to it. Fortunately the fix here is simple - we can just remove the workaround in DemoteToHelper, which makes the transform emit the 'untypeable' result type, and so the assignment matches types. Fixed: tint:2147 Change-Id: I89ca496c60ce140bfb7c5d6de54f4931afc85fbf Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/173180 Auto-Submit: Ben Clayton <bclayton@google.com> Reviewed-by: Antonio Maiorano <amaiorano@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h
that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h
version that Dawn implements.webgpu.h
.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.