commit | 80416612a9e6902cbec7547d9cee10f16b9ea118 | [log] [tgz] |
---|---|---|
author | Ben Clayton <bclayton@google.com> | Mon Jul 24 14:03:34 2023 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Jul 24 14:03:34 2023 +0000 |
tree | 1268219aa3a215f3078fcedf6b6044e410154139 | |
parent | e84d386757fb5c3b7af3715378e99491c11489f8 [diff] |
[tint][ir][ToProgram] Handle shadowing. Change the ir::Module naming methods to allow for duplicate names. Change the ir::Disassembler to ensure that IDs are uniquely named. If the disassembler has an ID that does not match the value's name, then a new comment is appended to the end of the instruction with the value's ID and name. Add a new RenameConflictsWGSL transform that renames declarations which prevent identifiers from resolving to the correct declaration, and those with identical identifiers declared in the same scope. This fixes all the known issues with shadowing which the roundtrip fuzzer uncovered. Change-Id: Ib3c3df8093863a9917c201ca6ee8c958a4ada6dc Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/141321 Auto-Submit: Ben Clayton <bclayton@google.com> Commit-Queue: Ben Clayton <bclayton@google.com> Reviewed-by: Dan Sinclair <dsinclair@chromium.org> Kokoro: Kokoro <noreply+kokoro@google.com>
Dawn is an open-source and cross-platform implementation of the work-in-progress 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)
(TODO)
Apache 2.0 Public License, please see LICENSE.
This is not an officially supported Google product.