CMake-only fork of https://dawn.googlesource.com/dawn with cleaned, vendored dependencies
Go to file
David Neto 2920659a47 Rolling 3 dependencies
Roll third_party/googletest/ e588eb1ff..482ac6ee6 (8 commits)

e588eb1ff9..482ac6ee63

$ git log e588eb1ff..482ac6ee6 --date=short --no-merges --format='%ad %ae %s'
2020-03-17 absl-team Googletest export
2020-03-16 dmauro Googletest export
2020-03-13 absl-team Googletest export
2020-03-06 absl-team Googletest export
2020-03-03 absl-team Googletest export
2020-03-03 absl-team Googletest export
2020-02-21 johan.mabille Fixed warnings
2020-01-29 krystian.kuzniarek remove a dead reference to the Autotools script

Roll third_party/spirv-headers/ 0a7fc4525..f8bf11a02 (9 commits)

0a7fc45259..f8bf11a025

$ git log 0a7fc4525..f8bf11a02 --date=short --no-merges --format='%ad %ae %s'
2020-03-17 dkoch Add shadercalls scope
2020-03-03 ntorosda Added ray flags, primitive culling flags, queries
2020-03-17 cepheus Non-functional: Update header build to match Khronos spec. builder.
2020-02-14 alele Update headers for SPV_KHR_ray_tracing.
2020-03-13 jmadill Add missing header to BUILD.gn.
2020-03-09 stevenperron Export NonSemanticDebugPrintf.h in bazel build
2020-03-02 jbolz Add NonSemantic.DebugPrintf JSON/header
2020-03-02 jbolz Fix max enum value
2020-01-01 xanto Also propagate SPIRV-Headers version to CMakeLists.txt

Roll third_party/spirv-tools/ e1688b60c..60104cd97 (18 commits)

e1688b60ca..60104cd974

$ git log e1688b60c..60104cd97 --date=short --no-merges --format='%ad %ae %s'
2020-03-19 dneto Add opt::Operand::AsCString and AsString (#3240)
2020-03-20 lujiao Add RayQueryProvisionalKHR to opt types (#3239)
2020-03-17 ehsannas Whitelist SPV_EXT_demote_to_helper_invocation for opt passes (#3236)
2020-03-17 dgkoch Add support for KHR_ray_{query,tracing} extensions (#3235)
2020-03-16 jmadill Roll external/spirv-headers/ 30ef660ce..a17e17e36 (1 commit) (#3230)
2020-03-13 vasniktel Update dependencies (#3228)
2020-03-12 greg Instrument: Debug Printf support (#3215)
2020-03-12 vasniktel spirv-fuzz: Support OpPhi when adding dead break and continue (#3225)
2020-03-12 afdx spirv-fuzz: Fix vector width issue in 'add equation instructions' pass (#3223)
2020-03-09 jbolz Allow sampledimage types as operand of OpCopyObject (#3222)
2020-03-09 vasniktel spirv-fuzz: Remove duplicated functionality (#3220)
2020-03-09 andreperezmaselco.developer spirv-fuzz: Allow OpPhi operand to be replaced with a composite synonym (#3221)
2020-03-08 andreperezmaselco.developer spirv-fuzz: Add toggle access chain instruction transformation (#3211)
2020-03-08 vasniktel spirv-fuzz: Add fuzzer pass to permute function parameters (#3212)
2020-03-06 afdx spirv-fuzz: Use better function name (#3207)
2020-03-05 afdx spirv-fuzz: Add swap commutable operands transformation (#3205)
2020-03-04 afdx spirv-fuzz: Fuzzer pass to add equation instructions (#3202)
2020-03-04 andreperezmaselco.developer Refactor FuzzerPass::ApplyTransformation code duplication. (#3206)

Created with:
  roll-dep third_party/googletest third_party/spirv-headers third_party/spirv-tools

Change-Id: I7f0e82cf5bbd38f6473757c74689ac35d23e53c1
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/17342
Reviewed-by: dan sinclair <dsinclair@google.com>
2020-03-19 18:31:59 +00:00
fuzz Initial commit 2020-03-02 15:47:43 -05:00
samples Expand build flags for Tint. 2020-03-18 14:08:48 +00:00
src Emit member accessor in WGSL generator. 2020-03-19 02:55:19 +00:00
test Initial commit 2020-03-02 15:47:43 -05:00
third_party Expand build flags for Tint. 2020-03-18 14:08:48 +00:00
tools Set root folder for linter. 2020-03-19 13:03:35 +00:00
.clang-format Initial commit 2020-03-02 15:47:43 -05:00
.gitignore Add gclient files to gitignore 2020-03-05 18:17:32 +00:00
CMakeLists.txt Set root folder for linter. 2020-03-19 13:03:35 +00:00
CODE_OF_CONDUCT.md Initial commit 2020-03-02 15:47:43 -05:00
CONTRIBUTING.md Initial commit 2020-03-02 15:47:43 -05:00
CPPLINT.cfg Initial commit 2020-03-02 15:47:43 -05:00
DEPS Rolling 3 dependencies 2020-03-19 18:31:59 +00:00
Doxyfile Initial commit 2020-03-02 15:47:43 -05:00
LICENSE Initial commit 2020-03-02 15:47:43 -05:00
README.md Expand build flags for Tint. 2020-03-18 14:08:48 +00:00
standalone.gclient Convert dependency management to using gclient 2020-03-05 15:58:27 +00:00

README.md

Tint

Tint is a compiler for the WebGPU Shader Language (WGSL).

This is not an officially supported Google product.

Requirements

  • Git
  • CMake (3.10.2 or later)
  • Ninja (or other build tool)
  • Python, for fetching dependencies

Build options

  • 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)

Building

Tint uses Chromium dependency management so you need to install depot_tools and add it to your PATH.

Getting source & dependencies

# 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

Compiling using CMake + Ninja

mkdir -p out/Debug
cd out/Debug
cmake -GNinja ../..
ninja # or autoninja

Compiling using CMake + make

mkdir -p out/Debug
cd out/Debug
cmake ../..
make # -j N for N-way parallel build

Issues

Please file any issues or feature requests at https://bugs.chromium.org/p/tint/issues/entry

Contributing

Please see the CONTRIBUTING and CODE_OF_CONDUCT files on how to contribute to Tint.