Dawn: Make shader creation parse shader code after checking cache This CL make shader code validation and parsing only happens after shader module cache missed, to prevent unnecessary overhead. This CL also split the non-shader-code validation from shader-code validation within ValidateAndParseShaderModule, and remove the InjectCompilationMessages (now compilation messages are moved into shader modules during InitializeBase or MakeError). Issue: 42242185 Change-Id: I192bf55a2f3b5784972a3e25e98452543c6afe67 Skip-Clang-Tidy-Checks: modernize-use-std-format Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/231034 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Zhaoming Jiang <zhaoming.jiang@microsoft.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.