Releases: shader-slang/slang
v2024.1.31
4ae58a72 Fix for invalid swizzle causing crash (#4690) f114433d Support parameter block in metal shader objects. (#4671) adf758c8 Fix the issue of name mangling (#4691) 7488b15d Update COM support doc to reflect implemented status (#4682) bf293360 Fix LLVM compile error on Windows (#4658) 335c1a2d move autodiff-decoration-stripping-pass so it always runs (#4632) a00d6035 Metal: `Interlocked` (atomic) member function support for buffers (#4655) 59dd133f Allow CPP/CUDA/Metal to lower/legalize buffer-elements to support column_major/row_major. (#4653) 6e7c7266 Warnings for uninitialized fields in constructors (#4680) 831d7965 Separating slang-test in CI for emit-spirv-via-glsl (#4665) ce4ffc34 Support OpDebugTypePointer for struct member pointer (#4527) be66cc88 Enable warnings-as-error for CI (#4659) ad379b7c Update spirv-header and spirv-tools to Jun/2024 (#4679) 1677a25f Fix bug with uninititialized warnings in nested scopes (#4677) 0d06ebce Initial implementation for decl-tree reflection API (#4666) 89e836d4 Correctly parse multiple escaped newlines (#4672) 3750a4dc Add unexpected end of input error to lexer (#4673) 6f1371a7 Adjust how `slang` and `slangc` uses a `profile` to manage the stage of an entry-point (#4670) 494efd72 Reduce duplication in slang lib builds (#4651) 3c092719 Squash warnings on gcc and clang (#4669) 0368f00b Remove generated file from source and build at build time (#4649) 62325bb4 Add slang-llvm and slang-glslang readmes (#4646) 32b1e25e Use slang-glslang.dll for spirv-validation (#4642) 2db15080 Move the file public header files to `include` dir (#4636) 7d07bd29 Fix latex rendering errors in auto-diff docs (#4668) f545ef30 Fix minimal-optimization flag with texture atomics (#4660) 05547e25 Warnings function parameters (#4626) b5174b47 Fix issue with synthesized `__init` methods not getting added to witness table (#4638) 12ecc43a SCCP instead of CFG since SCCP removes code of unused branches, not CFG (#4640) 6bcf92d2 gfx/metal uniform data binding and memory leak fix. (#4644) bd6314de (upstream/release-debug) Move if_let syntax to convenience-features section (#4628)
v2024.1.30
v2024.1.29
What's Changed
- Fix issue with synthesizing
Differential
type for self-differential generic types by @saipraveenb25 in #4602 - Fix incorrect codegen when returning initializer list as existential value. by @csyonghe in #4618
- Update CONTRIBUTION.md for path to slang-test.exe by @jkwak-work in #4619
- Change
IDefaultInitializableType
toIDefaultInitializable
by @ArielG-NV in #4620 - Start autodiff pass if
IRDerivativeMemberDecoration
is found by @ArielG-NV in #4623
Full Changelog: v2024.1.28...v2024.1.29
v2024.1.28
What's Changed
- Implement 64-bit version of clockARB by @venkataram-nv in #4571
- More precise handing of option dependencies by @expipiplus1 in #4612
- Statically link MSVC runtime by @expipiplus1 in #4613
- populate slang-tag-version with cmake by @expipiplus1 in #4611
- Fix missing include for static slang by @expipiplus1 in #4614
Full Changelog: v2024.1.27...v2024.1.28
v2024.1.27
Breaking Changes
Starting this release, the location for the binary files has been changed.
For Linux and MacOs, all libraries are now under lib/
and all executables are now under bin/
.
For Windows, all libraries and binaries are now under bin/
.
Before the change, the binary files are located under bin/<platform>/
.
Complete Change Log:
5006f49 Update CONTRIBUTION.md after CI side changes (#4598)
746d47b Specialize address space during spirv legalization. (#4600)
82f308c Fix the invalid spirv generation for matrix cast (#4588)
b89421c Add reflection API for functions. (#4587)
45ef0ce Fix lowering of associated types and synthesis of dispatch functions. (#4568)
16a4781 Add user guide section on user-defined attributes. (#4557)
ff9437e Implement non member function atomic texture support (#4544)
a08ccfa Fixes to Metal Input parameters and Output value input/output semantics (#4536)
667e504 Add float16
support to slang-torch (#4584)
28ca743 add GL_EXT_ray_tracing_position_fetch (#4566)
59343c1 Support status argument for GatherXXX (#4490)
4a24724 Various fixes around differentiable member associations [DerivativeMember(<diff-member>)]
(#4525)
8ed0f49 Emit spirv insts in the right sections. (#4590)
f4fac59 Cope with bsd coreutils on osx in release script (#4597)
5c9ce37 A couple of small fixes to cmake releases (#4596)
0e56999 WIP Drop Premake (#3703)
9f1ff45 Do not unnecessarily build llvm tools (#4594)
ca0181f Do not include vk xlib headers from vulkan.h when SLANG_ENABLE_XLIB is not set (#4593)
c06cc09 Include readme and license in release files (#4595)
97bd7e6 Add individual tests for scalar double intrinsics (#4591)
cde025e Neaten filecheck output for non-passing nested-parameter-block test (#4592)
8dd4c30 Change to use cmake in centos7 build (#4572)
0e6c5c5 Warnings for uninitialized values (#4530)
1caef59 Fix Lexer to recognize swizzling on an integer scalar value (#4515)
ddd14be Add documentation of the type system and decorations (#4470)
2941873 Add intrinsic for clock2x32ARB (#4563)
5a174df Fix the issue in emitFloatCast (#4559)
a453fad Language server performance and document symbol fix. (#4561)
4a49769 Treat global variables and parameters as non-differentiable when checking derivative data-flow (#4526)
2cb65a8 correctly setting launch parameters should fix the test (#4551)
65194cf Add vector overloads for or and and (#4529)
388de5f Correct type for double log10 (#4550)
40a4022 Add specializations for 1 vectors in functions using the $N glsl intrinsic placement (#4534)
42a9fce Add README.md and LICENSE to binary windows and macos packages (#4535)
d5d03d1 Emit errors when invalid capabilities are used (#4510)
v2024.1.26
bd01bd3f Fix the type error in kIROp_RWStructuredBufferLoad (#4523) fff79c31 Support HLSL `.sample` operators for MS textures (#4524) 6262569c Supply SPIRV capability for textureQueryLod (#4522) 6e550430 Error out when constructing tensor views from tensors with 0 stride. (#4516) 0e71a6d4 Resource searching for examples (#4518) d276ea35 Set debug working directory for slangc.exe (#4513) 15c02eb8 Add clearer information about how to submit a proposal document. (#4514) e19e0474 Parse scope for local variable declaration (#4507) 88382ac7 Implement CheckAccessFullyMapped (#4509)
v2024.1.21.1
Changes since v2024.1.21 edb9de81 Enable upload asset for old glibc build (#4501) b141099d Switch from ubuntu-18 to centos-7 for older glibc build (#4496)
v2024.1.25
048c5c32 Adding a note about the keyword, class. (#4503) ea4ebe39 Nested initialization list in struct crash fix (#4491) 0b519022 fix `WorkgroupSize()` compiler failiure (#4505) e49419b0 Implement HLSL resource bindings and default type `float4` to `SubpassInput<T>` (#4462) fd32b187 Update the coding convention document. (#4498)
v2024.1.24
323fdff4 Enable upload asset for old glibc build (#4501) f5acb6b9 Extend `countbits` intrinsic for vector types (#4499) 8172751f Switch from ubuntu-18 to centos-7 for older glibc build (#4496) b1f564b0 Include examples in default build (#4482) 5dd8f294 Cache address-space-legalization of `kIROp_Store` (#4480)
v2024.1.23
cb610113 Add API for querying dependency files on IModule (#4493) 1d4db422 Ray tracing validation (#4418) 7751963f Implement `uint2` variant of `asdouble` intrinsic (#4488) 4dd41de7 Remove returned-array-legalization pass for metal (#4478) de454b0e Fix Texture2DMSArray (#4485) e1d0ef20 Expand upon existing `ImageSubscript` support (Metal, GLSL, SPIRV) (#4408) 969dd4cc Support atomic intrinsics for Metal (#4473) 63e0064b Fix return type address space checking. (#4465) e2b56d01 Add intrinsic for `IsHelperLane()` in HLSL (#4471) 8d2f6e4d Add case to `emitVectorReshape` for when using a `vector<M, N>` type with `T` value (#4419) d832e335 Added float2x2 cast to float4 (and vise versa) (#4432) cf8d1cef Implementing `tbuffer` layout(s) (#4436) d349fd9e Add capture logic to other interfaces. (#4412) c3c1cb67 Disambiguate int type matrix multiply (#4425) 8c778870 Metal: Implement fix for non vector4 texture Load/Sample (#4417) 93fcb83c Feature/capture (#4397) f6b3ba88 Fixed gl_LocalInvocationIndex being uvec3 instead of uint (#4403) c00f461a remove inline that crashes old glibc version (#4398) fdef653a Improve Direct SPIRV Backend Test Coverage (#4396) 33e81a03 [Metal] Fix global constant array emit. (#4392) a38a4fb2 Make unknown attributes a warning instead of an error. (#4391) a210091c [Metal] Support SV_TargetN. (#4390) 2cc96907 Implement for metal `SV_GroupIndex` (#4385) a6b8348f fix the clang/gcc warning (#4382) cfef0c6f Metal: misc fixes and enable more tests. (#4374) 2407966e SPIR-V `SV_InstanceId` support in pixel shader (#4368) fba316f0 Remove `IRHLSLExportDecoration` and `IRKeepAliveDecoration` for non-CUDA/Torch targets (#4364) f0d40ad5 capture/replay: implement infrastructure for capture (#4372) ecc6ecb3 Fix cuda/cpp/metal crash for when using GLSL style shader inputs (#4378)