Skip to content

Releases: shader-slang/slang

v2024.1.9

23 Apr 09:37
484c1e6
Compare
Choose a tag to compare

484c1e6 ForceInline ByteAddressBuffer operations in stdlib (#4003)
22fbca5 create empty vulkan framebuffer with max dimensions (#3996)
923ef7a bit_cast & reinterpret warning if src->dst type not equally sized. (#3988)

v2024.1.8

22 Apr 04:40
c5b855d
Compare
Choose a tag to compare
c5b855d7 Update the dependency file (#3994)

51dc26ea Flag to prevent packing of cbuffer elements in HLSL backend. (#3993)
8362c2d4 Create a new release build for linux_x64. (#3989)
beae3a9d Add metal downstream compiler + metallib target. (#3990)
f9bcad35 Initial pass to add capability declarations to stdlib intrinsics. (#3912)
2da28c50 Support arithmetics on generic arguments (#3968)
e0aa53fb allow preludes in include folder (#3976)
adbaf8f2 add `-ignore-capabilities` flag (#3984)
7c162eba Enable NonUniformResourceIndex support for glsl, hlsl and spirv (#3899)
a3a5e7ea Metal: rewrite global variables as explicit context. (#3981)
a2b9e376 ForceInline SampleLevel to allow decorations to be applied (#3977)
d3fd7470 Implement if(let ...) syntax (#3673) (#3958)
5dd27a26 Support combined texture sampler when targeting HLSL. (#3963)
355a8d8f commit to partially fix #3931 (#3972)
2c66cc7e Add skeleton for metal backend. (#3971)
4b3f554a Force Inline all the InterlockedAdd functions in stdlib (#3965)
67313584 Fix Slang documentation typos (#3961)
282da4ac Fix for unscoped enums circular reference causing an error, #3959 (#3962)
d5d39dda Init expressions for struct fields support, #3738 (#3907)
3192f34f [GFX] Fix d3d12 buffer view creation logic for StructuredBuffers. (#3954)
030d7f45 Support 64bit HLSL atomic functions (#3957)
54745ac9 Documentation: fix typos and grammar (#3945)
31c704f2 Fix micro expansion issue for __LINE__. (#3942)
b937207d Fix IR lowering bug of do-while loops. (#3941)
565a871a Fix the issue that 'spGetDependencyFilePath' report 'unknown' (#3927) (#3939)
99584007 Fix another bug in entrypoint specialization arg synthesis. (#3933)
4df7887f Add missing astBuilder setting in `ComponentType::tryFoldIntVal`. (#3934)
cc3e9798 Disable sccache timestamps (#3937)
1afb9cb4 Fix the issues when compiling slang to library (#3936)
2a5d126c WIP: Fix the variable scope issue (#3838) (#3892)
5a9fcbd4 HLSL RT pipeline compile-only tests (#3793)

v2024.1.7

11 Apr 08:53
ee9d398
Compare
Choose a tag to compare

0eef40b Delete out of date docs
a6d59d0 Properly compile gl_WorkgroupSize. (#3925)
c85dd53 fix vulkan shared fence (#3911)
9fe2db1 Fix checking logic of entry point specialization arguments. (#3916)
33b4fa7 Fix typelayout for append/consume structured buffers. (#3924)
42764b7 Update README.md
61e5730 Rename slangpy -> slangtorch in documentation. (#3922)
425b2f7 Update release version slang-glslang to v13.0.0.x-i (#3920)
0970c8d Update spirv-tool to upstream/main branch (#3915)
6a465a4 Allow COM based API to discover and check entrypoints without [shader] attribute. (#3914)
957b2fb typos (#3913)
41b5ecd Add CTS status badge to README (#3901)
4a23ba5 Add decoration PerPrimitiveEXT for all OutputPrimitives members for mesh (#3900)
1b3887f Fix __init() functions that returns an existing value (#3866)
d61f813 Add decoration PerPrimitiveEXT when a mesh output variable is decorated with PrimitiveID (#3895)
cb87a8f gfx vulkan fixes (#3897)
94ced35 Legalization of non-struct when function expects struct, resolves #3840 (#3880)
f6c49fd Fix assertions due to malformed switch statements (#3858)
2768e42 Not emit DepthReplacing when frag shader uses SV_Position. (#3893)
a369835 Delete out-of-date notes from user guide. (#3877)
f8e038f Add documentation about constructors (#3879)
74d4c8a Update glsl intrinsic for GroupMemoryBarrierWithGroupSync (#3890)
e0de98e Refactor memory qualifier decorators to be a bit-flag set, resolves #3841 (#3881)
a697b2c Implement 8.14-8.19 of OpenGL-GLSL specification
c0482ec Fix the erroneous logic of determining whether or not to emit DepthReplacing. (#3885)
539d368 Update user guilde for new features. (#3875)
b5f4cf6 Allow enum values to be used as generic arguments. (#3874)
251f55c Support SM6.6 keyword "WaveSize" (#3871)
daf63cc Fix static member lookup in pointer types. (#3869)
abb7f1a Support [RequirePrelude] attribute on types. (#3867)
2c4f981 Allow bit operators on enum types. (#3862)
65ac9f3 Fix peephole optimization of TypeEquals. (#3865)
844a8d6 Correctly emit spv extension targeting EXT rather than NV, added to test for this case (#3864)
75afa65 Fix type union logic in generic type inference. (#3852)

v2024.1.6

27 Mar 21:10
5692879
Compare
Choose a tag to compare
Slang v2024.1.6

Changes:

56928794 Fix incorrect SPV stride for unsized array (#3837)
b346a933 Allow var/param names to be the same as type name. (#3850)
8395acfa Fix lookup to prevent finding `typedef` itself. (#3848)
c5369d50 Update README.md with tables for platform & target support (#3847)
c37e3ee2 Fix parsing issue around __transparent_block. (#3842)
dfdf243f Support mutable existential parameters. (#3836)
0877d1a3 Implement GLSL gimageDim & memory qualifiers with optional extension(s); resolves #3587 for GLSL & SPIR-V targets #3631 (#3810)
57f514d0 Fix the sign-extending issue in right shift (#3820)
5c88619c Fix default space assignment. (#3833)
cbe55261 Fix missing PerPrimitive decoration in mesh shader output. (#3828)
c9df734b Allow anonymous struct. (#3822)
a23adc22 Make `-no-mangle` option work, add `-no-hlsl-binding`. (#3817)
9b0df14c Changes to make UE TSR working with Slang. (#3815)
00474731 Partially implement vk_buffer_ref proposal. (#3814)
7a8ef896 Support arrow operator `->` on pointers. (#3812)
dd32414b Diagnose cyclic references in inheritance graph. (#3811)
9bd6b233 Fix `TriangleStream` lowering. (#3809)

v2024.1.5

20 Mar 23:53
45c7d33
Compare
Choose a tag to compare
Slang v2024.1.5

Changes:

45c7d33f Fix spirv generation for using output stream in a function. (#3806)
c371ccea Update a1-01-matrix-layout.md
c28a22fb Fix namespace parsing. (#3803)
04ffa84c Update a1-01-matrix-layout.md
6cefb85b Change representation of float literal in language translation (#3798)
f3b1161c Use static const in glsl.meta.slang. (#3801)

v2024.1.4

20 Mar 01:24
c2d4bcf
Compare
Choose a tag to compare
Slang v2024.1.4

Changes:

c2d4bcf9 Add more cases for `isUniformParameterType`. (#3800)
1ee1688a Fix type checking for constructors in generic interfaces. (#3799)
05f403be Fix regression on pointer address space handling. (#3797)
2b55de92 Fix inconsistent digest of precompiled module. (#3796)
50c268e5 Swap `left` and `right` for matrix multiplication (#3777)
2bfde345 Check cyclic types after specialization. (#3791)

v2024.1.3

19 Mar 00:33
26e25f6
Compare
Choose a tag to compare
Slang v2024.1.3

Changes:

26e25f6e Check for cylic types. (#3790)
f96a3fea Fix SPIRV for mesh shaders, checks for invalid target code&recursion. (#3788)
7f6e9591 Fix name mangling and source file finding logic for precompiled module validation. (#3784)
2d41012e Update 09-reflection.md (#3787)
667e209b Remove out of date documentation on compilation API. (#3785)
db60d191 [gfx] compile shaders when creating programs for d3d12/vulkan (#3774)
9b434e50 Implement raytracing extension(s); resolves #3560 for GLSL & SPIR-V targets (#3675)
9ee88a43 [gfx] use CUDA driver API (#3776)
d40931cc Mesh shader refactoring and bugfixes (#3702)

v2024.1.2

14 Mar 22:14
c7d7a96
Compare
Choose a tag to compare
Slang v2024.1.2

Changes:

c7d7a965 Support `#include` with angle brackets. (#3773)
f5f0740b Support unscoped enums. (#3771)
78d4df06 Add diagnostic on invalid type constraint. (#3769)
ba65c212 Fix lowering of glsl builtin globals. (#3767)
73c0cd17 Add cautionary desclaimers on interop mechanisms. (#3763)
67704d0e CMake fixes for MacOS (#3761)
e4b01c4b Fix side effect checking around storage buffer type. (#3762)
25df6b86 Fix crash when specializing generic entry points. (#3760)
5f0ee87d Add wrapper type synthesis logic for constructors. (#3756)
9fd74379 Implement glsl atomic's [non image or memory scope] with optional extension(s); resolves #3587 for GLSL & SPIR-V targets (#3755)
6f7c8271 Fix `sessionDesc.defaultMatrixLayoutMode` being ineffective. (#3753)
eef7e208 Fix derivative implementation of `clamp`. (#3750)
edc85fc4 Make type names spec-conformant in SPIRV reflect. (#3748)
8b519603 [SPIRV] Fix OpMemberDecorateString. (#3747)
66a0d91d Add nightly vkcts workflow (#3717)
8dc635ae gfx: return error when vulkan fails to create buffer/pipeline (#3741)
1c4e1acd [SPIRV] Use VectorTimesScalar opcode. (#3737)
d8eb7011 Support emitting generic target_intrinsic type. (#3745)
a91af961 Update 08-compiling.md

v2024.1.1

11 Mar 22:10
7c7fbd5
Compare
Choose a tag to compare
Slang v2024.1.1

Changes:

7c7fbd57 Add `-fvk-use-dx-position-w` and fix ExecutionMode ordering for geometry shaders. (#3731)
1bbcf25a Link-time specialization fixes. (#3734)
25a7d514 Fix spirv builtin for `SV_ShadingRate`. (#3730)
10c4d2e7 Fix crash when trying to constant fold non-existent call. (#3728)

v2024.1.0

09 Mar 02:21
5074ee7
Compare
Choose a tag to compare
Slang v2024.1.0

Changes:

5074ee7c Improve cpp prelude. (#3725)
0629b22b Enhance link-time type test. (#3724)
21502874 Add documentation for uniformity analysis. (#3721)
bc3dc0e8 Parser and module finding logic fixes. (#3720)
6f8a2068 [SPIRV] fix code gen for `SV_Coverage`. (#3718)
5afe9709 Add ray query intrinsic test (#3707)
faaa532a [SPIRV] Fix pointer lowering bug. (#3713)
a810aa31 Link-time constant and linkage API improvements. (#3708)
6492906e Fix SPIRV emit logic of `PrimitiveId` in fragment shader. (#3705)
240727db Uniformity analysis. (#3704)
af108c72 set VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT for device local memory (#3698)
a1e79e4b Fix the cuda left-hand swizzle issue (#3538) (#3691)
cc2a879b Integrate compile & validation test (#3674)
1cba7f31 Enable SampleCmpLevelZero tests and update the results (#3677)
f2e32575 [slangc] generate an error when `-entry` is not specified for targets that require them. (#3679)
8d4b659b [SPIRV] Fix DebugLine generated from source with #line directive. (#3678)
bb017e6a Extend `as` and `is` operator to work on generic types. (#3672)
2297623a Implement short-circuit logic operator (#3635)
0371deef Add user-guide section on pointers. (#3670)