v2026.14
·
164 commits
to master
since this release
=== Breaking changes === 5374382b3 `vector<T, 4>`: Explicitly disable `(vector<T, 2>, T)` and `(T, vector<T, 2>)` initializers (#12141) === All changes for this release === 426590635 Fix #12169: legalize global-scope array-of-struct varying input (#12170) b62921021 Correct -g0/none debug-level help text to match actual behavior (#12201) [BREAKING] 5374382b3 `vector<T, 4>`: Explicitly disable `(vector<T, 2>, T)` and `(T, vector<T, 2>)` initializers (#12141) 08024eda7 Clarify short-circuiting behavior related to `&&` and `||` (#12171) 444d8fb11 Language reference: clarify (non-)short-circuiting behavior of ternary conditional (#12163) 5e5f2a06b build(deps): bump google.golang.org/grpc from 1.79.3 to 1.82.1 in /extras/scaler (#12199) ebed5178f Enable metal target for vector/matrix fwidth (#12165) (#12172) e438c5aef Add external/README.md documenting dependencies and CMake options (#12178) 56eb1aa08 Add regression test for #12104: vec3 self-division ones-vector fold size (#12193) e549806c9 Stop tracking generated extras/scaler/scaler-linux binary (#12168) 7e65d5966 Reject conflicting -profile and -capability command-line arguments (#12122) 4955b21c3 Add slang-test optimization option (#12187) 4f23e904a Skip CI for nested Markdown changes (#12188) 601d363f7 Fix infinite loop in _unwrapParameterGroups for non-StructuredBuffer resources (#11136) 4f9d626be Public-by-default struct members in Slang 2026 (#9153) (#12151) d384b77e6 Fix #12173: bridge module-scope args to WGSL by-ref (out/inout) parameters (#12174) 02b55fb2c Reject operator names on variables and parameters (#11664) (#11665) d148787f2 Update spirv submodule (#12184) 7002bbe67 Fix #12177: honor -v failure in parallel runs and gate capability discovery (#12180) 958620c16 Coalesce redundant UniformConstant resource-element loads on SPIR-V (#12051) (#12111) b593edc38 Fix #10188: shape-independent __ldg exclusion for OptiX SBT loads (supersedes #11152) (#12119) cbabb7bde Avoid conflicting MSVC exception flags (#12166) 6a244fee2 Omit redundant terminating break in WGSL switch cases (#11947) a916653b7 Relocate slang-test generated outputs (#12154) c6a261068 [2/3] ByteAddressBuffer: decide wide-vs-scalarized + validate the alignment contract (#11595) 203065d66 Initialize parsed command-line options (#12153) 340e3445a Avoid ImageGatherExtended capability for constant-offset Gather (#9382) (#12133) beff6e419 Add default value blob reflection API (#11471) 2eb65582b Add explicit separate debug info output path (#12147) 3292090b3 Fix macOS signing version extraction (#12149) aaa07fe29 Use mimalloc for Slang-owned malloc/free on Windows (#12105) 99b8019ed build(deps): bump golang.org/x/net from 0.54.0 to 0.55.0 in /extras/scaler (#11892) 657b1907d Fix #11659: null-deref crash legalizing graphics-stage varyings for CPU kernel targets (#11661) ec177850a build(deps): bump golang.org/x/crypto from 0.48.0 to 0.52.0 in /extras/scaler (#11975) 3649fb982 Fix shader-slang/slang#11982: dedup SPIR-V DebugSource for imported modules (#12034) 5209a49f6 Add build command and binary location to the shader-coverage-backends README (#12144) d9c9fa413 Use `-Og` optimization level for GCC/Clang debug builds (#12140) c1c419c94 Fix #12006: don't warn E41017 on __extern_cpp host-provided globals (#12011) b184085c6 Fix CUDA prelude vec1 make helpers to return the vector struct (#11957) 5c30d437f PR board sync: deliver CI/check + status/review events, and co-assign community authors (#11847) 4f4ec5057 compile-perf: allow sweeping patch releases (include-patches dispatch input) (#12126) e3a6efd71 Fix shader-slang/slang#11984: strip UTF-8 BOM from #line DebugSource text (#12055) 8e8653f8c Fix #11315: lower `(void)expr` to the canonical void value (#12117) 6c837d317 fix: restore Fix #10909: Add Flat decoration for SubgroupLocalInvocationId in fragment shaders (#12064) 5bd8eb89f Fix #12046: correct GLSL float remainder; emit OpFMod for mod() on SPIR-V (#12130) 814ab6dda Fix #12121: accept and forward -X<compiler> options in render-test COMPARE_COMPUTE tests (#12128) c8d02ae59 Memoize shared Val and type DAG traversals (#12106) 1cfc8ec51 Fix Metal fragment out/inout param crash (Unknown addressspace) (#12015) 89443da36 Fix #12049: specializing a generic entry point can't see primary-file extension conformances (#12052) 623227f86 Revert "Pin nightly coverage macOS job to macos-15" (#12129) 8e3f9163d Allow shader invocation reorder extensions with SPIR-V 1.4 (#12115) bf7a78ab2 Fix use-after-free in LLVMBuilder JIT teardown (#12114) 20148df52 Split command-line process unit test (#12123) 336dd0f49 examples: add shader-coverage-backends with selectable CPU/CUDA/Vulkan/Metal dispatch (#11979) fd3ab55a7 compile-perf: read suite files as explicit UTF-8 everywhere (#12118) 694022a11 Default the shader-coverage demos to batched dispatch in full mode (#12090) 429163082 compile-perf: reporting redesign — landing page, release/daily cadence split, automatic new-release sweeps (#12086) c5d4d76e6 Fix #12102: make missing mimalloc source a configure error (#12107) a2596654f Instrument gpu-printing example to diagnose macOS Metal failure (#11999) (#12009) a8874f6a1 Gate three backend passes on RequiredLoweringPassSet flags (#11917) (#12088) b69ef6268 Extend sanitizer CI ASan checks and publish ASan-instrumented binaries (#11931) ad69c2e9f Use mimalloc for global C++ new/delete on Windows (#12036) e28b5e9c8 Fix zeroed primal in synthesized trivial forward derivative (#11670) 6d299e4e1 Skip legalizeMatrixTypes when no matrix needs legalizing (#11917) (#11987) 77f5ca091 Make CoopVec subscripts differentiable (#12031) 3eeda847c Fix #11730: brace initializer rejected as a function-call argument (#11818) 67de3f517 Fix #6557: exclude UseUpToDateBinaryModule from module content digest (#12068) bee6400c2 compile-perf: complexity sweep — scaling curves, floor+slope fits, sweep report (#12023) d6c772011 Materialize multi-element swizzle base as a temp in C++/CUDA emit (#12073) (#12078) 65a98e333 docs: add Shader Execution Coverage tutorial to the user guide (#11977) a9c6ff78e Restore MSVC Release /OPT flags when shipping PDBs (#12061) 1a9cec331 Fix shader-slang/slang#11996: add half->scalar conversion operators for CPU target (#12043) fd4bd2531 Add end-to-end SPIR-V test for 64-bit indexing (spvShader64BitIndexingEXT) (#12081) c744924e0 Include license texts in release packages (#12085) ed6c064d8 Fix ASan merge queue failures (#12060) b2fc4c63c Fix #12059: assign HLSL CoopMat.fill Splat return value (#12065) 340a191c5 Fix #12048: run lowerEnumType when only an enum cast survives (#12050) f961ddbea compile-perf: nightly operability for the daily-history re-run (UTF-8, suite-ref backfill, run-date labels) (#12074) 7cc70648a Pin nightly coverage macOS job to macos-15 (#12075) 8f0c3515d Fix generic interface witness lowering (#11615) 4d91d47bf Fix #12002: rename internal spirv_asm sample register so its OpName reads as compiler-internal (#12053) 1a2e4c5e9 Unwrap no_diff element types for autodiff updates (#12030) 5951e13e8 Avoid redundant core module recompilation (#12047) 84792eb15 Add ResourceDescriptorHeap/SamplerDescriptorHeap direct-index input syntax (#11798)