Rolling 5 shader dependencies

Roll third_party/tint/ e7ec7f168..d3f75ca0e (21 commits)

https://dawn.googlesource.com/tint/+log/e7ec7f16895a..d3f75ca0e8be

$ git log e7ec7f168..d3f75ca0e --date=short --no-merges --format='%ad %ae %s'
2020-09-17 dsinclair Add support for multisampled textures.
2020-09-17 dj2 [wgsl-writer] Emit texture types.
2020-09-16 dsinclair [type-determiner] Handle pointer arguments.
2020-09-15 tommek [wgsl-reader] Adding texture_sampler_types to type_decl
2020-09-14 dsinclair [hlsl-writer] Implement some disabled tests.
2020-09-10 dneto [spirv-reader]: entry point names are WGSL identifiers
2020-09-10 dneto Fix doxygen: don't describe return of void method
2020-09-10 sarahmashay [validation] add cts tests for switch
2020-09-10 sarahmashay [validation] validate switch statement
2020-09-10 tommek Adding a TODO for updating textureLoad on storage images
2020-09-08 dneto Simplify getting entry point function
2020-09-08 dneto Fix GCC warnings
2020-09-08 tommek [wgsl-reader] Parsing storage texture type
2020-09-08 tommek [wgsl-reader] Parsing image storage type
2020-09-08 tommek [ast] Change intrinsic function names to camel case
2020-09-08 tommek [spirv-writer] Removing GenerateConstantFloatZeroIfNeeded
2020-09-07 tommek [spirv-writer] Fixing memory leaks in texture intrinsics tests
2020-09-03 dneto [spirv-reader] Set entry point name
2020-09-03 tommek [spirv-writer] Generating texture intrinsic operations
2020-09-03 sarahmashay [validation] add const variables shouldn't have a storage class
2020-09-03 sarahmashay [writer] add a return to convert_image_format_to_spv

Created with:
  roll-dep third_party/tint

Change-Id: Ia3e55f55e39ec0a8adb6b3f1f9d7910d8a31cb77


Roll third_party/SPIRV-Tools/ 34ef0c3fd..60ce96e2f (5 commits)

https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/34ef0c3fdc8e..60ce96e2ff10

$ git log 34ef0c3fd..60ce96e2f --date=short --no-merges --format='%ad %ae %s'
2020-09-18 afdx spirv-fuzz: Add pass recommendations (#3757)
2020-09-18 stefanomil spirv-fuzz: Consider all ids from dead blocks irrelevant (#3795)
2020-09-18 afdx Fix header guard macros (#3811)
2020-09-18 antonikarp spirv-fuzz: Fix TransformationDuplicateRegionWithSelection (#3815)
2020-09-17 46493288+sfricke-samsung spirv-val: Add DeviceIndex (#3812)

Created with:
  roll-dep third_party/SPIRV-Tools

Change-Id: Ia8b545abfa18bb36d5725e9bf75a068c3d5fb2f0


Roll third_party/spirv-headers/ 3fdabd0da..060627f0b (2 commits)

https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/3fdabd0da293..060627f0b0d2

$ git log 3fdabd0da..060627f0b --date=short --no-merges --format='%ad %ae %s'
2020-09-10 syoussefi Register the ANGLE compiler (#168)
2020-09-08 cepheus Rebuild of latest headers, which slightly moves OpTerminateInvocation

Created with:
  roll-dep third_party/spirv-headers

Change-Id: Ia90e56b028e31ddf83a73aaefdaba761928e3d1b


Roll third_party/spirv-cross/ bdbef7b1f..8891bd351 (3 commits)

https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Cross/+log/bdbef7b1f398..8891bd35120c

$ git log bdbef7b1f..8891bd351 --date=short --no-merges --format='%ad %ae %s'
2020-09-17 post Clean up conditional branch codegen.
2020-09-17 post Deal with case where a selection construct conditionally merges/breaks.
2020-09-14 post Implement a simple evaluator of specialization constants.

Created with:
  roll-dep third_party/spirv-cross

Change-Id: If8d41684b0f0c822741ac08a19c2221e0e7410d4


Roll third_party/glslang/ 517f39eee..4dcc12d1a (11 commits)

https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/517f39eee46f..4dcc12d1a441

$ git log 517f39eee..4dcc12d1a --date=short --no-merges --format='%ad %ae %s'
2020-09-18 rex.xu SPIRV: Add more utility functions to build some opcodes (#2398)
2020-09-15 laddoc Preprocessor related issue fix (#2378)
2020-09-14 rex.xu SPIRV: Add disassembly support for multiple literal strings (#2397)
2020-09-14 laddoc Fix scope definition in ES 100. (#2379)
2020-09-14 john Fix #2385: guard against constant_id on non-const.
2020-09-12 shuizhuyuanluo Try to find python interpreter from host first
2020-09-11 ShabbyX Allow subpassLoad for ANGLE
2020-09-08 tobias.hector Added missing copyright amendment
2020-09-07 rex.xu SPIRV: Fix some disassembly issues
2020-09-03 tobias.hector Error when initializing rayQuery with assignment
2020-09-02 rex.xu Parser: Fix wrong names of extension macros

Created with:
  roll-dep third_party/glslang

Change-Id: I896179d682441cb24de0a0fc0eaa49684258e781
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/28680
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
1 file changed
tree: 1a3510fce9ed1758473b84536bddebe31311aa9c
  1. build_overrides/
  2. docs/
  3. examples/
  4. generator/
  5. infra/
  6. scripts/
  7. src/
  8. third_party/
  9. tools/
  10. .clang-format
  11. .gitattributes
  12. .gitignore
  13. .gn
  14. AUTHORS
  15. BUILD.gn
  16. CMakeLists.txt
  17. codereview.settings
  18. CONTRIBUTING.md
  19. dawn.json
  20. dawn_wire.json
  21. DEPS
  22. LICENSE
  23. OWNERS
  24. PRESUBMIT.py
  25. README.chromium
  26. README.md
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.