CMake-only fork of https://dawn.googlesource.com/dawn with cleaned, vendored dependencies
cf77d75573
https://swiftshader.googlesource.com/SwiftShader/+log/d25ce8725224..f6f11215cd93 $ git log d25ce8725..f6f11215c --date=short --no-merges --format='%ad %ae %s' 2020-07-01 capn Implement shaderStorageImageExtendedFormats support 2020-07-05 capn Implement scatter/gather for 1- and 2-byte texels 2020-07-01 capn Fix float-to-half conversion 2020-07-03 capn Eliminate large image specialization 2020-06-24 capn Refactor texel buffer reads 2020-06-24 capn Implement SNORM uniform texel buffer support 2020-06-24 capn Implement B10G11R11_UFLOAT_PACK32 uniform texel buffer support 2020-07-02 sugoi ASTC Decoder: Trim unused struct members 2020-07-02 capn Fix /DEBUG:FASTLINK usage 2020-06-30 pcc Start reserving x18 by default on Android targets. 2020-06-25 srisser Fix debug assert from happening in release build 2020-06-10 capn Optimize clearing of depth and stencil images 2020-06-25 thakis mac: Add ARM64 support to swiftshader. 2020-06-22 amaiorano Kokoro: add builds with REACTOR_EMIT_DEBUG_INFO and REACTOR_EMIT_PRINT_LOCATION 2020-06-22 amaiorano Fix build when ENABLE_RR_DEBUG_INFO enabled 2020-06-22 amaiorano Make Windows Kokoro script less verbose 2020-06-22 cwallez Revert "Optimize clearing of depth and stencil images" 2020-06-11 capn Assert attachment format supports blending when blending is enabled 2020-06-10 capn Optimize copying image data for presentation 2020-06-10 capn Optimize clearing of depth and stencil images 2020-06-01 capn Assert reserved binding entries aren't accessed 2020-05-12 capn Optimize out-of-bounds checks with unsigned compare 2020-05-07 capn Replace instead of add pointer offsets when out of bounds 2020-06-15 capn Add a benchmark with multisampling enabled 2020-06-15 capn Refactor multisample benchmark support 2020-06-11 capn Implement multisample support for the triangle benchmark 2020-06-17 capn Don't assert thread_local initialization 2020-06-11 capn Ignore rasterization state pointers when rasterization is disabled 2020-06-11 capn Zero-initialize the context state and data 2020-06-15 sugoi Cleanup: using the proper Image subregion structure 2020-06-16 bclayton Squashed 'third_party/marl/' changes from 5c6c1532220..d29553a3730 2020-06-16 bclayton Squashed 'third_party/marl/' changes from c5127112545..5c6c1532220 2020-06-09 bclayton SpirvShaderDebugger: Show vector elements as xyzw 2020-06-09 bclayton SpirvShaderDebugger: Add a virtual destructor 2020-06-15 bclayton Squashed 'third_party/marl/' changes from 38c0c7a0f..c51271125 2020-06-15 bclayton Repoint marl branch from master to main 2020-06-15 bclayton SubzeroReactor: Use new marl::Scheduler::Config API. 2020-06-10 amaiorano Make rr::Print output to debugger and be stubbed 2020-06-10 sugoi Regres: Roll deqp forward to latest 1.2.1 2020-06-04 capn Validate the SPIR-V code in debug builds 2020-06-05 capn Add a triangle rendering benchmark 2020-06-10 capn Add glslang dependency to VulkanBenchmarks 2020-06-10 capn Add glslang as a submodule 2020-06-05 capn Move CMake build targets for PowerVR samples before unit tests 2020-06-01 capn Add microbenchmarks for vkCmdClear*Image 2020-06-04 capn Add back vulkan.hpp 2020-06-01 caio.oliveira Convert Vulkan headers from CRLF to LF endings 2020-06-02 ari.suonpaa Add Z mirroring support for image blit. 2020-05-26 vantablack Added reference counting for PipelineLayout objects 2020-06-02 bclayton libVulkan: Use new marl::Scheduler::Config API. (...) 2020-05-01 amaiorano Regres: use Subzero backend by default 2020-04-30 bclayton Squashed 'third_party/marl/' changes from 748d3c161..3c643dd4c 2020-04-30 bclayton Vulkan/Debug: Don't step for column updates 2020-04-30 bclayton Vulkan/Debug: Fix build with clang-10. 2020-04-12 bclayton Device: Use std::unique_ptr instead of raw pointers 2020-04-09 amaiorano CMake: add graphviz generation scripts 2020-04-29 jrprice Fix null dereference in OFFSET macro 2020-04-29 capn Fix JIT on separate thread 2020-04-28 capn Avoid implicitly destructing thread-locals 2020-04-27 amaiorano Eliminate use of Vulkan header BEGIN_RANGE/END_RANGE/RANGE_SIZE enums 2020-04-27 amaiorano Run clang-format on renamed headers 2020-04-27 amaiorano Rename Vulkan-source .h to .hpp 2020-04-27 bclayton ReactorUnitTests: Speed up multithreaded tests 2020-04-22 capn Eliminate the ABORT() macro 2020-04-24 capn Record vkCmdBindDescriptorSets() as a single command 2020-04-23 capn Store binding information in the pipeline layout 2020-04-22 capn Don't expose individual descriptor set layouts to SPIR-V compilation 2020-04-23 capn Fix ordering of descriptor set bindings 2020-04-24 bclayton SpirvShader: Document activeLaneMask() and storesAndAtomicsMask() 2020-04-24 capn Omit ASSERT() expression evaluation in Release builds 2020-04-23 bclayton SpirvShaderDebugger: Ensure frames are fully popped 2020-04-23 bclayton SpirvShaderDebugger: Implement globals, stub array types 2020-04-22 bclayton SpirvShader: Add WriteCFGGraphVizDotFile debug function 2020-04-21 pcc Don't unlock Android buffers immediately after locking them. 2020-04-20 digit LLVM: Do not map read-only data sections as executable. 2020-04-17 digit Vulkan: Add vk_icdInitializeConnectToServiceCallback() 2020-04-23 amaiorano Kokoro: fix SWIFTSHADER_LESS_DEBUG_INFO not being set 2020-04-22 digit Update tests/presubmit.sh to accept Fuchsia bugs as fxb/# 2020-04-22 capn Fix specializing graphics routines for the pipeline layout 2019-05-15 bclayton SpirvShader: Add a flag for printing SPIRV execution 2020-04-17 bclayton Regres: Write logs to /dev/null 2020-04-20 amaiorano CMake: use target_compile_options/definitions for llvm 2020-04-20 amaiorano CMake: use target_link_options 2020-04-20 amaiorano CMake: require version 3.13 2020-04-20 amaiorano Kokoro: update CMake to latest version 2020-04-17 bclayton Regres: Limit the default number of threads to 100 2020-04-15 capn Pass only descriptor data to shader execution 2020-04-16 capn Reduce descriptor binding info exposure 2020-04-22 bclayton Kokoro: Fix ubuntu bots. 2020-04-17 digit Vulkan: Fix Fuchsia external semaphore fix tryWait(). 2020-04-21 amaiorano CMake: fix astc code not being enabled correctly 2020-04-20 capn Don't use deprecated llvm::Type::getVectorNumElements() 2020-04-17 capn Fix JIT on separate thread 2020-04-03 bclayton Use Thread Safety Analysis annotations throughout SwiftShader. 2020-04-17 digit CMakeLists: Fix Fuchsia build. 2019-07-01 bclayton LLVMReactor: Drop codegenMutex, now thread safe. 2020-04-17 bclayton LLVMJIT: Remove the TargetMachine cache. 2020-04-17 bclayton LLVM 7: Set LLVM_ENABLE_THREADS to 1 2020-04-17 bclayton SpirvShader: Fix ASSERT firing in debugger 2020-04-17 bclayton Squashed 'third_party/marl/' changes from 539094011..748d3c161 Created with: roll-dep third_party/swiftshader TBR=enga@chromium.org Bug: None Change-Id: I9c71f3e1810f0515ba5958cf18c9d31f0b3b40cd Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24441 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Corentin Wallez <cwallez@chromium.org> |
||
---|---|---|
build_overrides | ||
docs | ||
examples | ||
generator | ||
infra/config | ||
scripts | ||
src | ||
third_party | ||
tools/memory/asan | ||
.clang-format | ||
.gitattributes | ||
.gitignore | ||
.gn | ||
AUTHORS | ||
BUILD.gn | ||
CMakeLists.txt | ||
CONTRIBUTING.md | ||
DEPS | ||
LICENSE | ||
OWNERS | ||
PRESUBMIT.py | ||
README.chromium | ||
README.md | ||
codereview.settings | ||
dawn.json | ||
dawn_wire.json |
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
.
- The
- 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:
- Dawn's bug tracker if you find issues with Dawn.
- Dawn's mailing list for other discussions related to Dawn.
- Dawn's source code
- Dawm's Matrix chatroom for live discussion around contributing or using Dawn.
- WebGPU's Matrix chatroom
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.