summaryrefslogtreecommitdiffstats
path: root/external
Commit message (Collapse)AuthorAge
* Update Slang-RHI/slang (#5701)Anders Leino2024-11-28
| | | | | | | | | | | | | | | | | | | | | | * Update Slang-RHI/slang This brings in new fixes for WebGPU. In particular, the "use_dxc" toggle is now used, which should enable these tests to run on WebGPU, if f16 is otherwise supported: - `tests/language-feature/generics/variadic-0.slang` - `tests/language-feature/generics/tuple.slang` This closes #5605. * Disable tests/autodiff/float-cast.slang for wgpu This test was previously not running for WebGPU because it required the 'half' render feature, and Slang-RHI was previously not reporting it. With the Slang-RHI update, the test now runs on WebGPU. It now fails because the test is using 'double' which is just not supported on WebGPU. Thus this commit disables the test.
* Don't treat StrcturedBuffer<IFoo> as a specializable param. (#5645)Yong He2024-11-22
| | | | | * Don't treat StrcturedBuffer<IFoo> as a specializable param. * Fix RHI.
* Change how DeclRef::toText works (#5592)Sai Praveen Bangaru2024-11-20
| | | | | | | * Change how DeclRef::toText works We now ignore the decl-ref heirarchy since that only includes nodes with specialization info & simply walk up the tree of decls, while emitting any specializations present in the decl-ref. * Update some tests. Add cases for direct refs to generic params & Lookup decl refs
* Enable WGPU texture sampling test (#5617)Anders Leino2024-11-20
| | | | | | | | | | | | | | | * Limit number of MIP levels on 1d textures to be 1 This avoids running into a WebGPU limitation, and helps to address issue #4943. * Update Slang-RHI to get WGPU fixes * Enable WGPU texture sampling test This helps to address issue #4943. --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Document WGSL-specific features (#5571)Anders Leino2024-11-19
| | | | | Issue #5567. Co-authored-by: Yong He <yonghe@outlook.com>
* [slang-rhi] pass encoders (#5559)Simon Kallweit2024-11-14
| | | | | * use pass encoder api * update slang-rhi
* Correct include dir for libslang (#5539)Ellie Hermaszewska2024-11-13
| | | | | | | | This stops adding the repo root to the include path for anything linking with slang. This enabled a bunch of convenient includes, but might lead to confusing behavior for anyone including slang. Not to mention differences including it from an install vs source. Co-authored-by: Yong He <yonghe@outlook.com>
* Various fixes to enable some WGSL graphics tests (#5548)Anders Leino2024-11-13
| | | | | | | | | | | | | | | | | | | | | * Update Slang-RHI to get WGPU backend fixes * render-test: Use device local memory type for vertex buffers This helps to avoid https://github.com/shader-slang/slang-rhi/issues/104 * Fix bug in WGSL emitter layout code. There was a "kinds" vs. "kind flags" mismatch, and also getBindingOffsetForKinds was not being used. This patch enables a bunch of tests for WGPU. This helps to address issue #4943. * format code --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Use correct slang source dir for slang-rhi (#5534)Ellie Hermaszewska2024-11-12
| | | | | Fixes https://github.com/shader-slang/slang/issues/5481 We should consider changing the CMAKE_BINARY_DIR usages also in our build descs
* [slang-rhi] refactor command encoding (#5487)Simon Kallweit2024-11-11
| | | | | | | | | * update render test to use new slang-rhi API * update slang-rhi --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Fix WGSL parameter block binding. (#5500)Yong He2024-11-06
| | | | | | | | | | | | | * Fix WGSL parameter block binding. * Re-enable tests. * Update failure list. * Fix entrypoint parameters. * Update tests. * Enable stat-var test.
* Update slang-rhi and fix error handling (#5485)cheneym22024-11-05
| | | | | | | | | | | | | | Update slang-rhi to pick up a fix in webgpu compilation error handling. In doRenderComparisonTestRun(), only return TestResult::Pass if the shader is ran actually compiled. A similar check is in place elsewhere in slang-test-main, but was missed in doRenderComparisonTestRun(). Add two tests to the github CI skiplist, and use the skiplist in one additional CI config that was running without it. Closes 5291
* Various WGSL fixes. (#5490)Yong He2024-11-04
| | | | | | | | | | | | | | | | | | | * [WGSL] make sure switch has a default label. * Various WGSL fixes. * Update rhi submodule commit * format code * Remove unnecessary DISABLE_TEST directive on not applicable test. * Matrix comp mul + `select`. * Legalize binary ops for wgsl. --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Update Slang-RHI again to get more WGPU fixes (#5475)Anders Leino2024-11-01
| | | | | | | | | | | | | This fixes a teardown crash, and a buffer usage mismatch issue during bind group creation. These Slang-RHI fixes allow several WGPU tests to be enabled: - tests/compute/column-major.slang - tests/compute/constant-buffer-memory-packing.slang - tests/compute/matrix-layout.hlsl - tests/compute/non-square-column-major.slang - tests/compute/row-major.slang - tests/hlsl/packoffset.slang This helps to address issue #5222.
* Update Slang-RHI to get recent WGPU fixes (#5467)Anders Leino2024-11-01
| | | | | | This helps to address issue #5222. Also disable Slang-RHI from fetching DXC and Agility SDK, since that seems to break our tests. (See issue #5474.)
* format yaml and json (#5428)Ellie Hermaszewska2024-10-30
| | | | | * format yaml and json * format shell scripts
* preparation for clang format (#5422)Ellie Hermaszewska2024-10-29
| | | | | | | | | | | | | | | | | | | | | | | * Clang-format excludes * Add .clang-format * Don't clang-format in external * Missing includes and forward declarations * Replace wonky include-once macro name * neaten include naming * Add clang-format to formatting script * Add xargs and diff to required binaries * add clang-format to ci formatting check * Add max version check to formatting script * temporarily disable checking formatting for cpp files
* format cmake files (#5406)Ellie Hermaszewska2024-10-29
| | | | | | | | | * format cmake files * format code --------- Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
* Update slang-rhi (#5345)Simon Kallweit2024-10-18
|
* update slang-rhi (#5258)Simon Kallweit2024-10-17
| | | | | | | | | * update slang-rhi * update render-test to use new slang-rhi apis --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Lower minimum CMake version to 3.22 (#5295)Ellie Hermaszewska2024-10-15
| | | | | | | * Lower minimum CMake version to 3.22 Reverts https://github.com/shader-slang/slang/pull/4193 * Update build instructions to mention older CMake versions
* update slang-rhi (#5234)Simon Kallweit2024-10-07
| | | | | * update to latest slang-rhi * do not build slang-rhi examples
* Add WGSL support for slang-test (#5174)Anders Leino2024-10-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use the assembly description as target when disassembling I believe this is a bugfix. It seems to have worked before because up until the WGSL case, the disassembler has been the same executable as the one producing the binary to be disassembled. * Add Tint as a downstream compiler This closes issue #5104. * Add downstream compiler for Tint. * Tint is wrapped in a shared library, 'slang-tint' available from [1]. * The header file for slang-tint.dll is added in external/slang-tint-headers. * Add some boilerplate for WGSL targets. * Add an entry point test for WGSL. [1] https://github.com/shader-slang/dawn/releases/tag/slang-tint-0 * Add WGSL_SPIRV as supported target for Glslang * Add WebGPU support to slang-test This helps to address issue #5051. * Disable lots of crashing compute tests for 'wgpu' This closes issue #5051. --------- Co-authored-by: Yong He <yonghe@outlook.com>
* update slang-rhi (#5208)Simon Kallweit2024-10-04
|
* Allow building using external dependencies (#5076)Tobias Frisch2024-10-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add options to prevent usage of own submodules Signed-off-by: Jacki <jacki@thejackimonster.de> * Allow using external unordered dense headers Signed-off-by: Jacki <jacki@thejackimonster.de> * Link system wide installed unordered dense Signed-off-by: Jacki <jacki@thejackimonster.de> * Allow external header usage for lz4 and spirv Signed-off-by: Jacki <jacki@thejackimonster.de> * Add more options to disable targets Signed-off-by: Jacki <jacki@thejackimonster.de> * Add option to provide explizit path for spirv headers and remove earlier options that break the build process Signed-off-by: Jacki <jacki@thejackimonster.de> * Rename options to use common prefix Signed-off-by: Jacki <jacki@thejackimonster.de> * Fix indentation for the cmake changes Signed-off-by: Jacki <jacki@thejackimonster.de> * Add advanced_option function for cmake * Normalize includes between system and submodule dependencies Fix any before-accidentally-working problems * Add option for enabling/disabling slang-rhi Signed-off-by: Jacki <jacki@thejackimonster.de> * Pass correct include path for cpu tests * Correct include path --------- Signed-off-by: Jacki <jacki@thejackimonster.de> Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
* Update slang-rhi (#5187)Simon Kallweit2024-09-30
| | | | | | | | | | | * update slang-rhi * fix render-test * update slang-rhi --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Disable wgpu on linux (#5186)Simon Kallweit2024-09-30
| | | | | | | | | * remove setting CMAKE_SYSTEM_PROCESSOR we will need a proper toolchain file to setup cross-compilation * disable slang-rhi webgpu backend on linux this is a temporary fix for allowing the release workflow to run
* Update slang-rhi (#5176)Yong He2024-09-27
|
* Update slang-rhi (#5160)Simon Kallweit2024-09-26
|
* update slang-rhi (wgpu graphics support) (#5151)Simon Kallweit2024-09-25
| | | Co-authored-by: Yong He <yonghe@outlook.com>
* update slang-rhi with initial wgpu support (#5137)Simon Kallweit2024-09-23
| | | | | | | | | * update slang-rhi with initial wgpu support * update slang-rhi --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Update spirv-tools version (#5089)cheneym22024-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Update spirv-headers and spirv-tools versions * Fix compute-derivative regressions with upgraded spirv headers Extension was promoted from NV to KHR while retaining same enums. Fixes #5106 * Prevent DCE on ray trace position fetch Adds dummy usage to the intersection positions fetched from HitTriangleVertexPositions to prevent DCE from removing their usage. Fixes #5105 * Update spirv-tools-generated * More DerivativeGroup*KHR test fixes Add fixes for a missing test intrinsic-derivative-function-in-compute.slang Use the {{NV|KHR}} syntax to tolerate either enum. Fixes #5106 * Squash tabs in closesthit test * HACK test CI * Avoid multiple IncomingRayPayloadKHR storage params * Revert "HACK test CI" This reverts commit c2556ea2baef0bd48e4c86f90cf17dfab80015c1. * Avoid multiple IncomingRayPayloadKHR storage params in anyhit
* refactor render test to use latest slang-rhi (#5119)Simon Kallweit2024-09-19
| | | | | | | | | | | * refactor render test to use latest slang-rhi * update slang-rhi * update slang-rhi * update slang-rhi * update slang-rhi
* Fix dx on vk with rhi (#5086)Ellie Hermaszewska2024-09-19
| | | | | Requires this PR https://github.com/shader-slang/slang-rhi/pull/40 Co-authored-by: Yong He <yonghe@outlook.com>
* fix slang-rhi compile error (#4979)Simon Kallweit2024-08-31
|
* Draft: integrate slang-rhi (#4970)Simon Kallweit2024-08-30
| | | | | | | | | | | | | | | | | | | | | * add slang-rhi submodule * refactor render-test to use slang-rhi and remove OpenGL support * remove -vk -glsl tests * remove gl test * disable failing test * allow recursive submodules in github actions * update slang-rhi * update slang-rhi --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Fix warning messages for MSVC and external projects (#4730)Jay Kwak2024-07-24
| | | Closes #4692
* Enable warnings-as-error for CI (#4659)Jay Kwak2024-07-18
| | | | | | | | | Enable warnings-as-error for CI Closes #4664. Uses glslang commit that fixed a compiler warning Fixes a recent warning from external/CMakelist.txt A new macro, `SLANG_MAYBE_UNUSED` is added for a future need.
* Update spirv-header and spirv-tools to Jun/2024 (#4679)Jay Kwak2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | The following external directories are updated. It is to use a new SPIRV keyword, "OpExtInstWithForwardRefs". Related to #4304 external/spirv-header: > commit 2acb319af38d43be3ea76bfabf3998e5281d8d12 > Author: Kévin Petit kevin.petit@arm.com > Date: Wed Jun 12 16:41:14 2024 +0100 > SPV_ARM_cooperative_matrix_layouts (#433) external/spirv-tools: > commit ce46482db7ab3ea9c52fce832d27ca40b14f8e87 > Author: Nathan Gauër brioche@google.com > Date: Thu Jun 6 12:17:51 2024 +0200 > Add KHR suffix to OpExtInstWithForwardRef opcode. (#5704) > The KHR suffix was missing from the published SPIR-V extension. > This is now fixed, but requires some patches in SPIRV-Tools. external/spirv-tools-generated: This is generated from spirv-tools
* Squash warnings on gcc and clang (#4669)Ellie Hermaszewska2024-07-17
|
* Statically link MSVC runtime (#4613)Ellie Hermaszewska2024-07-11
| | | | | * Statically link MSVC runtime * Statically link MSVC runtime for llvm
* WIP Drop Premake (#3703)Ellie Hermaszewska2024-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove premake lua * Remove premake generated vs project * remove deps file * Remove premake driving bat files * Full test matrix under CMake * Remove premake based ci workflows * Wiggle CI * remove cmake from ci name * find frameworks correctly on osx * remove cmake from ci name * Cope with sccache not being available * cmake based falcor tests * ci wobble * only install ninja if necessary * more appropriate cache name * Remove premake from build instructions * Add some docs on ci setup * remove premake from regression tests * remove premake from perf test * Set SLANGC_PATH * ci wobble * bump slang-binaries * ci wobble * Bump spirv tools * dont use timestamp in cache * remote debug code * cache key wobble * Install sccache after building llvm * Do not build llvm tools * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * Tests spirv via glsl in ci * Define SLANG_ENABLE_XLIB=1 * osx builds on aarch64 * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * ci wobble * package documentation and metadata with cmake * ci wobble * Split hlsl double intrinsic tests * ci wobble * Correct type for double log10 Fixes https://github.com/shader-slang/slang/issues/4549 * remove working test from expected failures * add broken test to expected failures * smaller build for falcor tests * ci wobble * A few exclusions in ci * wip, release script * Enable examples in ci * neaten release script * Correct building docs * Only use xlib vulkan when slang_enable_xlib is true * bump slang-llvm version * Remove toolchain file use * Bump slang-llvm preset version * slash direction * Improve build directions * Add msvc cross build documentation * Disable old release files * Smaller set of releases for test * Allow not building llvm * simplify release matrix * Cross releases * formatting * formatting * ci wiggle * ci wiggle * cleaner * neaten * ci wobble * formatting * Install cross tools on linux * do not clean build dir * neaten ci * neaten ci * neaten ci * remove unused release workflow files * Build llvm on some platforms * neaten ci * notarize on osx * s/x64/x86_64 * ci wobble * Embed stdlib for release build * wobble ci * wobble ci * s/x64/x86_64 * ci wobble * ci wobble * ci wobble * vk-gl-cts on cmake * neaten ci * neaten ci * bump cache action version * Cope with windows being weird about case * old glibc version * old glibc version * Correct action file * Keep cache hot on main branch * separate small script for old glibc releases * ci wobble * ci wobble * Run cmake outside of docker * only sign on releases * Revert "Run cmake outside of docker" This reverts commit a58aaba939a4aa35fe70962fd60d9512b143592f. * python3 on build image * less parallel * ci wobble * ci wobble * ci wobble * newer git * ci wobble * ci wobble * Use newer docker image * Use newer docker image * sccache wobble * permissions issue * neaten * build llvm in ci * build llvm in ci * Remove linux clang build in ci * Only install crossbuild tools on non-aarch64 systems * neaten ci.yml * Correct github matrix * Simplify github matrix * ci wobble * Disable broken test See https://github.com/shader-slang/slang/issues/4589 * ci wobble * Neater slang-llvm archive filename * Neater path for uploading artifacts * Neater ci names * Use Windows SDK 10.0.19041.0 in cmake builds
* Do not unnecessarily build llvm tools (#4594)Ellie Hermaszewska2024-07-10
|
* Ray tracing validation (#4418)ccummingsNV2024-06-27
| | | | | | | | | | | | | | | | | * Ray tracing validation in Vulkan * Clean up RT validation code * Remove redundant api additions * Remove redundant debug utils callback * Ray tracing validation uses extended descriptor for initialization --------- Co-authored-by: Chris Cummings <chriscummings@nvidia.com> Co-authored-by: Jay Kwak <82421531+jkwak-work@users.noreply.github.com> Co-authored-by: skallweitNV <64953474+skallweitNV@users.noreply.github.com>
* [gfx] metal backend skeleton (#4223)Simon Kallweit2024-05-27
| | | | | | | | | | | | | | | | | | | | * add metal-cpp submodule * add metal-cpp cmake target * gfx metal backend skeleton * add premake support * add foundation framework * add metal-cpp include to premake * update vs project file --------- Co-authored-by: Simon Kallweit <skallweit@nvidia.com> Co-authored-by: Jay Kwak <82421531+jkwak-work@users.noreply.github.com>
* Fix macos CI and clang warnings. (#4019)Yong He2024-04-24
| | | | | | | | | | | | | * Fix macos CI. * Fix. * Fix. * Fix. * Fix clang warnings. * Fix more warnings.
* Update spirv-tool to upstream/main branch (#3915)kaizhangNV2024-04-09
| | | | | spirv-tools is updated to upstream/main: 3983d15 spirv-headers is updated to vulkan-sdk-1.3.280.0 spirv-tools-generated is updated based on spirv-tool build
* cmake: add options to disable gfx, test, example, ... targets (#3572)Lukas Lipp2024-02-14
| | | | | | | | | | | | | | | | | | | | | | | * cmake: add options to disable gfx, test and example targets * cmake: enable gfx, test, example targets by default * cmake: use same naming scheme * cmake: option to disable slangd and slangc targets * cmake: option for enabling slang-rt target * cmake: option to deactivate llvm and glslang * cmake: better option text * cmake: remove duplicate slang-llvm option * doc: update docs/building.md --------- Co-authored-by: Yong He <yonghe@outlook.com>
* Update spirv-tools (#3445)kaizhangNV2024-01-16
| | | | | | | | | | | | | | | Update spirv-tools, spirv-headers and spirv-tools-generated repos. spirv-tools is updated to tag: v2023.6.rc1, branch: vulkan-sdk-1.3.275 commit: 3bb36c2a3f1a72f14e931cc2daca4311733b0014 spirv-headers is updated to branch: vulkan-sdk-1.3.275 commit:1c6bb2743599e6eb6f37b2969acc0aef812e32e3 spirv-tools-generated/*inc, *.h are generated from spirv-tools repo. source/slang/slang-spirv-core-grammar-embed.cpp is generated during slang build.
* Add abseil_cpp to spirv-tools-generated instructions.jsmall-nvidia2024-01-04
|