| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
| |
* Fix 6317.
* Fixes #6316.
* Fix cmake preset.
---------
Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
|
| |
|
| |
This helps to address #4760.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Allow LHS of `where` to be any type.
* Register free-form extensions when loading precompiled module.
* Fix test.
* Fix.
* Fix `as<IRType>`.
* try fix precompiled module test.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Fix crash when handling uninitialized resource type
close #6328.
When declare a var with struct type, if the struct has a resource
type field and it doesn't provide explicit constructor, because
slang won't implicit construct such variable at declare site if user
doesn't explicitly call the initializer list, we should report the
resource type field uninitialized as an error to prevent future possible
crash when legalize any use of such variable.
|
| |
|
| |
Closes https://github.com/shader-slang/slang/issues/6339
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Publicly link core module sources
Closes https://github.com/shader-slang/slang/issues/6037
* format
* format
* remove unnecessary conditional
* comments
* neaten
* Only build embedded core modules when necessary
* Make dependencies on core module source more precise
* more precice dependencies on core module source
* Neaten
|
| | |
|
| |
|
| |
Co-authored-by: Yong He <yongh@outlook.com>
|
| |
|
|
| |
Co-authored-by: Yong He <yonghe@outlook.com>
Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
|
| |
|
|
|
|
|
|
|
| |
* Add raypayload decoration to ray payload structs
Closes https://github.com/shader-slang/slang/issues/6104
* Disable PAQs when compiling with DXC
See https://github.com/shader-slang/slang/issues/3448
|
| |
|
|
|
| |
fs. (#6314)
Co-authored-by: Ellie Hermaszewska <ellieh@nvidia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Remove the docs/proposals directory
This directory will get added to the spec repository in the following PR:
https://github.com/shader-slang/spec/pull/6
This closes #6155.
* Remove entry from .github/CODEOWNERS file
* Redirect some proposal references
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* initial work for metal subgroups
* add glsl intrinsics
* enable wave tests
* enable glsl subgroup tests, glsl barrier fixes
* minor fixes
* fix incorrect test target
* disable some glsl functional tests
* disable failing glsl test
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The musl libc replacement removed fopen64, fgetpos64, and other 64-bit
variants because it's 64-bit only. However, it does have the following
in its headers:
#define fgetpos64 fgetpos
Just importing <stdio.h> is enough to get slang compiling on musl
systems like Alpine Linux.
Fixes #6330.
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
| |
* Add WGSL to list of formats supporting multiple entry points
* Add a test for generating multiple WGSL entrypoints
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Propagate the kIROp_MemoryQualifierSetDecoration
memory decorations when converting from structures
to flat global resources
struct Tex
{
globallycoherent float4 bias = { 0.1, 0.3, 0.9, 1.5};
};
uniform Tex gTex;
should have the following code generated in GLSL:
coherent layout(rgba32f)
layout(binding = 2)
uniform image2D globalParams_gTex_tex_0;
This closes #6079
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Use and() and or() functions for logical-AND and OR
With this commit, Slang will emit function calls to `and()` and `or()`
for the logical-AND and logical-OR when the operands are non-scalar and
the target profile is SM6.0 and above. This is required change from
SM6.0.
For WGSL, there is no operator overloadings of `&&` and `||` when the
operands are non-scalar. Unlike HLSL, WGSL also don't have `and()` nor
`or()`. Alternatively, we can use `select()`.
|
| | |
|
| |
|
|
|
|
|
| |
* update slang-rhi cmake integration
* disable fetching slang
* update slang-rhi
|
| |
|
| |
This closes #6221.
|
| | |
|
| |
|
|
|
|
| |
This case now parses after the following PR was merged.
https://github.com/shader-slang/slang/pull/6281
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
| |
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
|
|
|
| |
* Support stage_switch.
* Update proposal status.
* Fix gl_InstanceID.
* Fix.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#6292)
When a module consists of multiple source files, the module scope gets over-written for
each source file that's parsed into the module.
The result is that if you do something like the following, where source1.slang contains
an import statement, then the imported module will get imported into the module scope
corresponding to source2.slang, but won't be found from the scope of source1.slang.
slangc source1.slang source2.slang # 1 module from 2 source files
This patch fixes this problem by not over-writing existing container decl scope
when parsing new source files into the container.
This closes $6221.
|
| |
|
|
|
| |
* Allow tuples to work with initiailizer list.
* Update definition of C-Style types.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* add initial proposal
* update proposal
* update proposal
* update proposal
* update proposal
* fix typo
* improve wording
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
| |
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
* Fix inline markdown rendering
* Fix it in a different way..
* Update 07-autodiff.md
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
| |
This commit enables "D3D12-experimenta-feature" in render-test.
This is required to use CoopVec feature with dxcompiler.dll.
But it is enabled only when "-dx12-experimental" is used, because it appears that DX12 becomes unstable when the experimental feature is enabled, which causes bunch of tests randomly failing.
|
| |
|
|
|
| |
* maxtessfactor attribute should take a floating point value
* Support integer value on maxtessfactor
|
| |
|
|
|
|
|
| |
* Fix DCE for calls to functions that have associations
* Update slang-ir-util.cpp
* Update slang-ir-util.cpp
|
| |
|
|
|
|
|
| |
* Use two-stage parsing to disambiguate generic app and comparison.
* Typo fix.
* Update doc.
|
| |
|
|
| |
This is a follow-up to PR #6058, where we switched to Falcor-new
now we will switch back to Falcor.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* SP004: implement initialize list translation to ctor
- We synthesize a member-wise constructor for each struct follow
the rules described in SP004.
- Add logic to translate the initialize list to constructor invoke
- Add cuda-host decoration for the synthesized constructor
- Remove the default constructor when we have a valid member init constructor
- Disable -zero-initialize option, will re-implement it in followup (#6109).
- Fix the overload lookup issue
When creating invoke expression for ctor, we need to call
ResolveInvoke() to find us the best candidates, however
the existing lookup logic could find us the base constructor
for child struct, we should eliminate this case by providing
the LookupOptions::IgnoreInheritance to lookup, this requires
us to create a subcontext on SemanticsVisitor to indicate that
we only want to use this option on looking the constructor.
- Do not implicit initialize a struct that doesn't have explicit default
constructor.
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix autodiff issue for vector<T, N>
Close #6154
We didn't implement correctly for vector<T, N> regarding the
differentiablity. As we check differentiable before specialization,
however according to the definition of vector, it has to be specialized
to IFloat to know it's conformed to IDifferential type. Therefore for
parameter type vector<T, N> will become no_diff.
Therefore, we change the implementation a to make it explicit conform
to IDifferential type.
* fix typo
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Fix warning about push constants, shaderRecordEXT
These resources should not warn about missing vk::binding.
* format code
---------
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
entrypoint. (#6260)
* Auto enable `-fvk-use-entrypoint-name` when there is more than one entrypoint.
* Fix.
|
| |
|
|
|
|
|
|
|
| |
* Fix native Windows ARM64 build.
* Fix
---------
Co-authored-by: Yong He <yongh@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* initial work
* more work
* more work on glsl intrinsics
* add subgroup broadcast for glsl
* wip add wgsl extension tracking
* enable tests, enable extensions and added some todos
* format and warning fixes
* fix wgsl extension tracker
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update Slang-RHI and enable any debug layers up-front
As [1] shows, creating a D3D12 device and then enabling debug layers causes future device
creation to fail.
That means enabling debug layers is a process-wide decision that should be done at
startup, and not just before creating an individual device.
Previously, Slang-RHI enabled debug layers as part of device creation.
The new Slang-RHI revision doesn't do that anymore, but instead allows the user to enable
debug layers earlier, with a separate API.
This change calls the mentioned API before creating any device.
This closes #6172.
* Compile fixes needed after updating slang-rhi
---------
Co-authored-by: Yong He <yonghe@outlook.com>
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Distribute slang-glsl-module.bin in release packages.
* Fix.
* fix2.
* Build glsl modlue into a dll.
* Notarize glsl-modue.dylib
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Base compiler options for targets on target-specific compiler options
Before this change, the target compiler options were based on the linkage-wide compiler
options, which where later again inherited from (basically a no-op).
With this change, the target-specific compiler options are added first, and then
the linkage-wide comnpiler options are inherited from.
* Remove debug instructions if target-specific setting is NONE
This helps to address #6092.
* Make sure the linkage debug info level is sufficient for each target
This closes #6092.
|
| |
|
|
|
|
|
|
|
| |
* Distribute slang-glsl-module.bin in release packages.
* Fix.
* fix2.
* Build glsl modlue into a dll.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* AD: Docs Update
* More documentation
* More documentation
* More docs fixes
* Cleanup documentation
* More docs polish. Add docs for the [Differentiable] attributes
* Fixup code sections
* Fixup
* Address review comments
* regenerate documentation Table of Contents
* Update docs with more playground links
---------
Co-authored-by: slangbot <186143334+slangbot@users.noreply.github.com>
Co-authored-by: Yong He <yonghe@outlook.com>
|