CMake-only fork of https://dawn.googlesource.com/dawn with cleaned, vendored dependencies
Go to file
Austin Eng f7905c3cb5 Roll 5 dependencies
Roll third_party/glslang/ b60e067b4..d253278f9 (2 commits)

b60e067b43..d253278f98

$ git log b60e067b4..d253278f9 --date=short --no-merges --format='%ad %ae %s'
2020-08-12 alanbaker Update test expectations
2020-08-12 alanbaker Update SPIRV-Tools and SPIRV-Headers known good

Created with:
  roll-dep third_party/glslang

Change-Id: I1aea9a8360edcbc16c46fdcf36c2d0d18b544540

Roll third_party/shaderc/ c626b912d..ffd805115 (2 commits)

c626b912dc..ffd805115e

$ git log c626b912d..ffd805115 --date=short --no-merges --format='%ad %ae %s'
2020-08-13 rharrison Add support for Dawn using deprecated Options constructor (#1130)
2020-08-10 rharrison Roll 5 dependencies and update expectations (#1129)

Created with:
  roll-dep third_party/shaderc

Change-Id: I2c4482711a1951d10d5592308f5a378bfe2114f3

Roll third_party/spirv-cross/ 82d1c43e4..4c7944bb4 (1 commit)

82d1c43e40..4c7944bb42

$ git log 82d1c43e4..4c7944bb4 --date=short --no-merges --format='%ad %ae %s'
2020-08-13 lehoangq Fix #1445: MSL: Enclose args when convert distance(a,b) to abs(a-b)

Created with:
  roll-dep third_party/spirv-cross

Change-Id: I69886c8b47ebc66fd98228a97203bc8835dfb314

Roll third_party/SPIRV-Tools/ 2990a2192..b4c4da3e7 (15 commits)

2990a21926..b4c4da3e76

$ git log 2990a2192..b4c4da3e7 --date=short --no-merges --format='%ad %ae %s'
2020-08-13 alanbaker Improve non-semantic instruction handling in the optimizer (#3693)
2020-08-13 vasniktel Fix the bug (#3680)
2020-08-12 andreperezmaselco.developer spirv-fuzz: Check integer and float width capabilities (#3670)
2020-08-12 andreperezmaselco.developer spirv-fuzz: consider additional access chain instructions (#3672)
2020-08-12 andreperezmaselco.developer spirv-fuzz: Ignore specialization constants (#3664)
2020-08-12 vasniktel Fix the bug (#3683)
2020-08-12 vasniktel spirv-fuzz: Fix width in FuzzerPassAddEquationInstructions (#3685)
2020-08-12 jaebaek Preserve debug info in dead-insert-elim pass (#3652)
2020-08-12 jaebaek Validate more OpenCL.DebugInfo.100 instructions (#3684)
2020-08-11 alanbaker Only validation locations for appropriate execution models (#3656)
2020-08-11 andreperezmaselco.developer spirv-fuzz: Fix in operand type assertion (#3666)
2020-08-11 andreperezmaselco.developer spirv-opt: Add spvOpcodeIsAccessChain (#3682)
2020-08-11 vasniktel spirv-fuzz: FuzzerPassPropagateInstructionsUp (#3478)
2020-08-10 stevenperron Handle no index access chain in local access chain convert (#3678)
2020-08-10 rharrison Roll 2 dependencies (#3677)

Created with:
  roll-dep third_party/SPIRV-Tools

Change-Id: I1a07ba8931ec0b3ec8d70234f8aa871793df6fa0

Roll third_party/tint/ 5e7ef27ca..23c3fee35 (3 commits)

https://dawn.googlesource.com/tint/+log/5e7ef27ca7b1..23c3fee35436

$ git log 5e7ef27ca..23c3fee35 --date=short --no-merges --format='%ad %ae %s'
2020-08-13 sarahmashay [validation]: Add disabled test for validating return statement type matches function types
2020-08-13 sarahmashay [validation] Validates return statement
2020-08-13 rharrison Fix handling of .spvasm inputs

Created with:
  roll-dep third_party/tint

Change-Id: I70f8e484d12df835efce98db28b22d0cfa848a0b
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/26800
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2020-08-13 20:18:39 +00:00
build_overrides Add Tint to BUILD.gn 2020-05-07 21:15:55 +00:00
docs Deprecate Buffer::SetSubData in favor of Queue::WriteBuffer 2020-06-02 09:24:39 +00:00
examples Autoformat all tests and examples 2020-07-10 20:33:08 +00:00
generator Niceify formatting in webgpu_cpp 2020-07-30 19:02:43 +00:00
infra/config Add .clang-format files and format more files 2020-07-15 19:51:17 +00:00
scripts Enable WGSL support by default 2020-07-28 21:57:18 +00:00
src Remove wgpu::Buffer::SetSubData 2020-08-13 16:01:08 +00:00
third_party Add .clang-format files and format more files 2020-07-15 19:51:17 +00:00
tools/memory/asan Fix is_asan build (at least on Mac) 2020-04-06 22:27:02 +00:00
.clang-format Add .clang-format 2017-11-28 16:18:39 -05:00
.gitattributes Add .gitattributes to normalize EOL 2019-07-15 12:23:18 +00:00
.gitignore Add Tint to BUILD.gn 2020-05-07 21:15:55 +00:00
.gn Re-enable -Wunguarded-availability in Dawn standalone builds 2019-12-11 16:54:51 +00:00
AUTHORS Rename NXT -> Dawn in the comments 2018-07-18 22:54:06 +02:00
BUILD.gn Remove temporary GN proxy groups. 2020-04-14 17:36:44 +00:00
CMakeLists.txt Fix the CMake build because of CMP0077 2020-04-10 17:04:31 +00:00
CONTRIBUTING.md docs: write an overview of Dawn and split README.md 2019-12-05 11:01:41 +00:00
DEPS Roll 5 dependencies 2020-08-13 20:18:39 +00:00
LICENSE Initial commit of all the NXT integration. 2017-04-20 14:38:20 -04:00
OWNERS Add enga@chromium.org as OWNER 2020-04-02 18:14:37 +00:00
PRESUBMIT.py Use canned CheckPatchFormatted instead of our own linting 2020-07-15 20:47:57 +00:00
README.chromium Add component to OWNERS and fixup repo URL in README.chromium 2018-09-25 20:53:37 +00:00
README.md Add Matrix chatrooms to README.md 2020-04-24 12:38:13 +00:00
codereview.settings Initial CQ configuration 2018-08-23 08:33:35 -04:00
dawn.json Remove wgpu::Buffer::SetSubData 2020-08-13 16:01:08 +00:00
dawn_wire.json Remove wgpu::Buffer::SetSubData 2020-08-13 16:01:08 +00:00

README.md

Dawn, a WebGPU implementation

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 C/C++ headers that applications and other building blocks use.
    • The webgpu.h version that Dawn implements.
    • A C++ wrapper for the webgpu.h.
  • A "native" implementation of WebGPU using platforms' GPU APIs:
    • D3D12 on Windows 10
    • Metal on macOS and iOS
    • Vulkan on Windows, Linux, ChromeOS, Android and Fuchsia
    • OpenGL as best effort where available
  • A client-server implementation of WebGPU for applications that are in a sandbox without access to native drivers

Helpful links:

Documentation table of content

Developer documentation:

User documentation: (TODO, figure out what overlaps with webgpu.h docs)

Status

(TODO)

License

Apache 2.0 Public License, please see LICENSE.

Disclaimer

This is not an officially supported Google product.