commit | afa5617f6fd288a16b7755aa03dbafe330216ec4 | [log] [tgz] |
---|---|---|
author | James Price <jrprice@google.com> | Mon Jun 19 16:23:17 2023 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Mon Jun 19 16:23:17 2023 +0000 |
tree | 96224c3862b2f48a758ef18cb9749b98fd42f443 | |
parent | aabfc4d85bc39c3ff28670d22cfada276b94860a [diff] |
[ir][spirv-writer] Add MergeReturn transform Each return instruction is replaced with instructions that set a flag to indicate the function is returning, capture the return value, and exit from the current block to the nearest merge block. The code in the merge block is then conditionalized based on that flag. A single return instructions is then added to the final merge block of the function. This is needed to ensure that we adhere to SPIR-V's uniformity requirements. Use it in the SPIR-V writer. Bug: tint:1906 Change-Id: I80edef751acc8e807a78e55549244a61726b462e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/137340 Reviewed-by: Dan Sinclair <dsinclair@chromium.org> Reviewed-by: Ben Clayton <bclayton@google.com> Kokoro: Kokoro <noreply+kokoro@google.com> Commit-Queue: James Price <jrprice@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.