| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
* Support constant folding for static array access.
* Fix test.
|
|
|
|
When precompiling modules defined
with glsl, it's necessary to link in the
glsl definition module.
Reuse the public fillRequirements declaration
|
|
|
|
* Fix spirv lowering logic around pointer to unsized array.
* Fix.
---------
Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
|
|
|
|
Co-authored-by: Yong He <yonghe@outlook.com>
|
|
* Overhaul docgen tool and setup CI to generate stdlib reference.
* Fix build error.
* Write parsed doc for all decls.
* fix.
* fix callout.
* Fix.
* Fix comment.
* Fix.
* Delete obsolete doc tests.
* Fix.
* Categorize functions and types.
* Fix CI.
* Update comments.
|
|
initialization (#5023)
* Look through attributes and rates when determining by reference initialization
Closes #5022
* Make type of unwrapAttributedType more specific
* loosen type of unwrapAttributedType
* Discard changes to source/slang/slang-emit-spirv.cpp
* Discard changes to source/slang/slang-ir-check-differentiability.cpp
* Discard changes to source/slang/slang-ir.cpp
* Discard changes to source/slang/slang-ir.h
* Update slang-ir-use-uninitialized-values.cpp
* Remove redundant cast
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
|
declarations (#5236)
Closes issue #5229.
|
|
* update to latest slang-rhi
* do not build slang-rhi examples
|
|
* 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>
|
|
|
|
|
|
* Implement separate downstream library interface
Create a new com interface to house the methods for
precompiling slang modules to target code.
Add methods to count dependent modules and scrape
them for downstream target binaries such that the
downstream target binaries are linkabe outside
of slang, e.g. via spirv-link or dxc.
Fixes #5147
* Rename to _Experimental
Clearly identify this as an interface subject to change.
|
|
* 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>
|
|
* Initial work to support custom derivatives for member methods of differentiable types
* Support custom derivatives of member functions of differentiable types
- Also adds support for declaring custom derivatives via extensions.
* Fix
* move defs
* Update slang-check-decl.cpp
* Create diff-member-func-custom-derivative.slang.expected.txt
* Update slang-check-decl.cpp
* Fix for static custom derivatives
* Fix diagnostics for [PreferRecompute]
* Add backward custom derivative tests
|
|
Closes #5201
Currently ci.yml builds slang-llvm all the time for all platforms.
Because it takes too long, we store the output files in the cache.
If the cache server is too busy, slang-llvm will be rebuilt, which will take awhile, but it will eventually work out.
The problem is that git-clone was failing for cloning the LLMV repo.
This is a less expected result, because cloning a git repository normally don't fail.
We think that when the git-clone command is manually executed, there might be limit on the network connection based on IP or some sort.
We expect that this problem will be resolved if we use actions/checkout in the workflow.
Also this commit uses a forked repo of llvm under shader-slang
organization to avoid network traffic on the original llvm repo.
|
|
* Add path to bash to GITHUB_PATH
This is a workaround for a problem that keeps reoccurring on one of our self-hosted machines.
Ideally, we should assume that bash shell is available on the runner system, and we should rely on the system-wise setting of PATH to find bash.
This commit is a workaround for a case where bash cannot be found from the runner machine, which shouldn't be a case in a normal situation. It is also not safe to assume that the location of where bash is at a fixed location, because it can vary by how the system is setup.
Once we root cause the issue on the SlangWin4-2, we may remove this workaround later.
|
|
The type of `sizeof` has to be int not uint.
|
|
(#5200)
* Fix crash when compiling associatedtypes with generic interface constraints.
* delete hlsl.meta.slang.temp.h.
* Fix.
|
|
* Correct typo in parser
* SizeOfLineExprs have type int
Fixes https://github.com/shader-slang/slang/issues/5191
|
|
This commit enables the workflow debug message for running VK CTS
workflow.
Currently three CTS tests are causing a crash of deqp with an exit code
1. And when the debug message printing is enabled, this crash is no
longer happening, which is unexpected. It seems like the issue is on the
CI runner process rather than Slang, driver nor deqp.
We will keep the log message enabled not only to avoid the crash but
also to see more information when things went wrong.
This commit also prints the last 1,000 lines of TestResults.qpa when
deqp had a failing test or deqp was exited unexpectedly. This will help
us to debug the problem faster.
|
|
* Fix diagnostics for [PreferRecompute]
* Update dont-warn-on-simple-prefer-recompute.slang
* Update slang-ir-autodiff.cpp
* Update dont-warn-on-simple-prefer-recompute.slang
* Update warn-on-prefer-recompute-side-effects.slang
|
|
Co-authored-by: Yong He <yonghe@outlook.com>
|
|
* Add COM API for querying metadata.
* Fix tests.
* fix test.
|
|
* update slang-rhi
* fix render-test
* update slang-rhi
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
|
|
|
|
|
* 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
|
|
|
|
|
|
|
|
|
|
Closes #5117
This adds a build step of WebAssembly version of Slang.
Currently it is enabled only for Linux/Release to reduce the time cost
of CI, but the builds were all successful on all platforms and
configurations when tested.
|
|
* Design proposal for initialization.
* extension
* QA
* wording
* Update design.
* more revisions.
* revise text.
* rewording to be more accurate.
* Fix wording and add explanation to examples.
* clarify on zero initialization.
* refine the rules and examples.
* update status.
|
|
|
|
SCCACHE_IGNORE_SERVER_IO_ERROR=1
Closes https://github.com/shader-slang/slang/issues/5163
Co-authored-by: Yong He <yonghe@outlook.com>
|
|
|
|
* Implement texture_storage_Xd in WGSL
This commit implements `texture_storage_Xd` in WGSL, which is similar
to RWTextureXD in HLSL.
It is intresting that `texture_storage_Xd` doesn't take the shader
type as its input argument at all.
Instead, it takes "texel format" enum value as its first template
parameter, which can be found here:
https://www.w3.org/TR/WGSL/#storage-texel-formats
As an example, `texture_storage_2d<rg32uint, read_write>` expects
vec4<u32> as a value type for `Load` and `Store`, where Z-component
will be ignored and treated as zero and W-component will be treated
always as 1. The type `u32` is inferred from the enum value `rg32uint`.
Note that the number of component is always fixed to 4 regardless how
many components are actually stored.
|
|
|
|
|
|
|
|
|