commit | 5b5616f385905b231bc55499699b0881f321e1b4 | [log] [tgz] |
---|---|---|
author | Ben Clayton <bclayton@google.com> | Thu Oct 26 14:29:01 2023 +0000 |
committer | Dawn LUCI CQ <dawn-scoped@luci-project-accounts.iam.gserviceaccount.com> | Thu Oct 26 14:29:01 2023 +0000 |
tree | b3c4ab4bd24a6e3b68d176731e5ccef0df04d1a2 | |
parent | d8054e28e8977ccb6b0b6fbd7fd8c4b7889ce285 [diff] |
[tint][glsl] Make the GLSL printer PIMPL This is done, so: • The API is cleaner - one stateless Print() function instead of a constructor, Generate() and Result() • The compiler / linker does a better job inlining - binary size is reduced by 144 bytes, and gives the compiler more room for optimization. • You don't have to forward-declare or #include a bunch of implementation details in the header. • You don't have to duplicate the methods signatures in two files Change-Id: I7109f80ac1a49470501140e786602a8dd9d38f59 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/157242 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)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.