commit | 879e948d69a7fa598cff4c31737a69f3ae617074 | [log] [tgz] |
---|---|---|
author | Ben Clayton <bclayton@google.com> | Wed Jun 07 06:38:01 2023 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Wed Jun 07 06:38:01 2023 +0000 |
tree | f7f6ac96354cce85e7420dde6f1d486b777ea110 | |
parent | 79899ef43883484062ceeef0209f50def7b3386c [diff] |
[tint][ir] Add Initializer block to ir::Loop While the initializer can be emitted before the loop (as it did before), this helps with emission in a couple of ways: * It simplifies the work required to rebuild a for-loop. Some backends behave better with a for loop than with the equivalent while loop, so reconstruction is important. * For SPIR-V input, we can sensibly offload for-loop reconstruction to a transform, removing complexity from the backends. * This removes the need to place branch arguments on the ir::Loop itself, which makes ir::Loop behave more like ir::If and ir::Switch. The SPIR-V writer changes to support initializers is minimal. Bug: tint:1718 Change-Id: I9ea05e7cde3d9d42e51f76df9de55c0d176a67a0 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/136240 Reviewed-by: Dan Sinclair <dsinclair@chromium.org> Reviewed-by: James Price <jrprice@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: Ben Clayton <bclayton@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.