commit | fa9dbf0dda623db05644263e77c874d8feb19164 | [log] [tgz] |
---|---|---|
author | dan sinclair <dsinclair@chromium.org> | Mon Apr 06 18:43:56 2020 +0000 |
committer | dan sinclair <dsinclair@google.com> | Mon Apr 06 18:43:56 2020 +0000 |
tree | 1fe5bccad587f92c0687dccaa753d55c76f7e48e | |
parent | a32315cb7357a2100d27b637587e3bd921f55254 [diff] |
Add type determiner infrastructure. This CL adds the Context object, variable ScopeStack and a Function map into the type determiner. The sample app is also updated to verify the module produced before passing to the type determiner. Bug: tint:5 Change-Id: Ib4af4e4305ee8a306f48e1bd328eaf3ad006fd9a Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/18823 Reviewed-by: David Neto <dneto@google.com>
Tint is a compiler for the WebGPU Shader Language (WGSL).
This is not an officially supported Google product.
TINT_BUILD_SPV_READER
: enable the SPIR-V input reader (off by default)TINT_BUILD_WGSL_READER
: enable the WGSL input reader (on by default)TINT_BUILD_SPV_WRITER
: enable the SPIR-V output writer (on by default)TINT_BUILD_WGSL_WRITER
: enable the WGSL output writer (on by default)Tint uses Chromium dependency management so you need to install depot_tools and add it to your PATH.
# Clone the repo as "tint" git clone https://dawn.googlesource.com/tint tint && cd tint # Bootstrap the gclient configuration cp standalone.gclient .gclient # Fetch external dependencies and toolchains with gclient gclient sync
mkdir -p out/Debug cd out/Debug cmake -GNinja ../.. ninja # or autoninja
mkdir -p out/Debug cd out/Debug cmake ../.. make # -j N for N-way parallel build
Please file any issues or feature requests at https://bugs.chromium.org/p/tint/issues/entry
Please see the CONTRIBUTING and CODE_OF_CONDUCT files on how to contribute to Tint.