[tint] Validate member of structs, even if they are not referenced Currently members of a referenced struct are only validated if they are directly referenced. This causes ICEs in the backend when the struct is un-structured/modified to cause the members to become referenced. Specifically a 'valid' state becomes invalid after a transform, when the initial state should have been rejected as invalid. Fixing this exposed a number of SPIRV test cases that used point_size without the matching capability, so the SPIRV -> Core IR path has had the missing capability added. Fixes: 507904198 Change-Id: Ida113ffb9f915da382ac56e3971a48d66eb5f2d2 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/307015 Auto-Submit: Ryan Harrison <rharrison@chromium.org> Reviewed-by: James Price <jrprice@google.com> Commit-Queue: Ryan Harrison <rharrison@chromium.org> Commit-Queue: James Price <jrprice@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.