<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/external, branch master</title>
<subtitle>Making it easier to work with shaders</subtitle>
<id>https://git.yummers.dev/slang.git/atom?h=master</id>
<link rel='self' href='https://git.yummers.dev/slang.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/'/>
<updated>2025-10-16T22:16:18+00:00</updated>
<entry>
<title>Update SPIRV-Tools and SPIRV-Headers to latest versions (#8722)</title>
<updated>2025-10-16T22:16:18+00:00</updated>
<author>
<name>aidanfnv</name>
<email>aidanf@nvidia.com</email>
</author>
<published>2025-10-16T22:16:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=a890ddece9ab69b549068605595d006481a59d0f'/>
<id>urn:sha1:a890ddece9ab69b549068605595d006481a59d0f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Update slang-rhi (#8709)</title>
<updated>2025-10-16T17:18:31+00:00</updated>
<author>
<name>Simon Kallweit</name>
<email>64953474+skallweitNV@users.noreply.github.com</email>
</author>
<published>2025-10-16T17:18:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d8b732d7ba6d31a724cb18dc93f60d8bcc522c19'/>
<id>urn:sha1:d8b732d7ba6d31a724cb18dc93f60d8bcc522c19</id>
<content type='text'>
- Update to latest slang-rhi
- Enable additional slang-rhi tests for OptiX 8.0 and 8.1</content>
</entry>
<entry>
<title>Update build to allow setting external mimalloc path (#8676)</title>
<updated>2025-10-11T00:51:58+00:00</updated>
<author>
<name>Lujin Wang</name>
<email>143145775+lujinwangnv@users.noreply.github.com</email>
</author>
<published>2025-10-11T00:51:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d0641da8c7f27dfca5b0ae3bc7c737c7859e3939'/>
<id>urn:sha1:d0641da8c7f27dfca5b0ae3bc7c737c7859e3939</id>
<content type='text'>
Update the build to allow setting user-specific path for the external
module mimalloc.</content>
</entry>
<entry>
<title>Rename some symbols related to pointers types (#8592)</title>
<updated>2025-10-03T04:48:11+00:00</updated>
<author>
<name>Theresa Foley</name>
<email>10618364+tangent-vector@users.noreply.github.com</email>
</author>
<published>2025-10-03T04:48:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=cc8f6a241edb47c43c5698ee33abed4fe57d4566'/>
<id>urn:sha1:cc8f6a241edb47c43c5698ee33abed4fe57d4566</id>
<content type='text'>
Note that while this change touched a large numer of files, there are no
changes to functionality being made here. The only things being done are
renaming various symbols and, in a few cases, updating or adding
comments for consistency with the new names.

The core of the naming changes are:

* Most things named to refer to `OutType` (e.g., `IROutType`,
`IRBuilder::getOutType()`, etc.) have been consistently renamed to refer
to `OutParamType`, to emphasize that the relevant AST/IR node types are
only intended for use to represent `out` parameters.

* The same change as described above for `OutType` is also made for
`RefType`, which becomes `RefParamType` in most cases. One mess that
this exposes is the way that the `ExplicitRef&lt;T&gt;` type in the core
module currently lowers to `IRRefParamType`. This change sticks to the
rule of not making functional changes, so that mess is left as-is for
now.

* Names referring to `InOutType` have been changed to instead refer to
`BorrowInOutType`. The intention with this naming change is to emphasize
that the Slang rules for `inout` are semantically those of a borrow (or
at least our interpretation of what a borrow means).

* Names referring to `ConstRefType` have been changed to instead refer
to `BorrowInType`. This change starts work on clarifying that the
existing `__constref` modifier was never intended to be a read-only
analogue of `__ref`, and instead is the input-only analogue of `inout`.

* The `ParameterDirection` enum type has been changed to
`ParamPassingMode`, to reflect the fact that the concept of "direction"
fails to capture what is actually being encoded, particularly once we
have modes beyond simple `in`/`out`/`inout`.

While this change does not alter behavior in any case (the user-exposed
Slang language is unchanged), it is intended to set up subsequence
changes that will work to make the handling of these types in the
compiler more nuanced and correct. Breaking this part of the change out
separately is primarily motivated by a desire to minimize the effort for
reviewers.

---------

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Update SPIRV-Tools and SPIRV-Headers to latest versions (#8565)</title>
<updated>2025-10-01T16:17:04+00:00</updated>
<author>
<name>Harsh Aggarwal (NVIDIA)</name>
<email>haaggarwal@nvidia.com</email>
</author>
<published>2025-10-01T16:17:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=4d241f2ccc2b07673615e94ea8e99060cf2da66c'/>
<id>urn:sha1:4d241f2ccc2b07673615e94ea8e99060cf2da66c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Prepare VulkanSDK release Oct 2025 (#8525)</title>
<updated>2025-09-25T04:49:26+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-09-25T04:49:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=db44c1b732891102199f0ec9d219a33d2ab2d6a1'/>
<id>urn:sha1:db44c1b732891102199f0ec9d219a33d2ab2d6a1</id>
<content type='text'>
Related to
- https://github.com/shader-slang/slang/issues/8519</content>
</entry>
<entry>
<title>Fix SPIRV headers precedence (#8481)</title>
<updated>2025-09-19T15:45:30+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-09-19T15:45:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=48cbbcfeb3531a819edd74e072ca3c4b4379c5a3'/>
<id>urn:sha1:48cbbcfeb3531a819edd74e072ca3c4b4379c5a3</id>
<content type='text'>
Remove SYSTEM flag from SPIRV-Headers to fix MacOS header precedence.

When the path is registered as SYSTEM, it is used with `-isystem` option
not `-I` option and it gets less searching order on MacOS.

When spirv.h is installed on the system directory, it will end up using
the system installed spirv.h, which is most likely an older version than
we should use.</content>
</entry>
<entry>
<title>Set default mimalloc for spirv-tools but allow user to override (#8460)</title>
<updated>2025-09-17T19:27:57+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-09-17T19:27:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=58060d2f7e86427124551f3f6edcf05bf6e4d229'/>
<id>urn:sha1:58060d2f7e86427124551f3f6edcf05bf6e4d229</id>
<content type='text'>
This PR resolves a configuration conflict where the
SLANG_ENABLE_SPIRV_TOOLS_MIMALLOC option was defined twice with
different defaults, causing user settings to be overridden.
Changes:

- Removed duplicate definition in external/CMakeLists.txt that only
applied to WIN32
- Define default in main CMakeLists.txt
  - ON by default for Windows
- OFF by default for other platforms (still need to resolve crashes so
set it to `OFF` for now)

Preserved user configuration - explicit
-DSLANG_ENABLE_SPIRV_TOOLS_MIMALLOC=value settings are now properly
respected

Related to https://github.com/shader-slang/slang/issues/8158

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Added __magic_enum (#8436)</title>
<updated>2025-09-17T12:46:27+00:00</updated>
<author>
<name>Ronan</name>
<email>ro.cailleau@gmail.com</email>
</author>
<published>2025-09-17T12:46:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=b5078d12127f4ab348b8d6d4c4e8139ba7bfb47f'/>
<id>urn:sha1:b5078d12127f4ab348b8d6d4c4e8139ba7bfb47f</id>
<content type='text'>
Fixes #8406 (and #8410).

`AddressSpace`, `MemoryScope` and `AccessQualifier` are no longer
`BaseType`.
I added a new `__magic_enum` (very similar to `__magic_type`) syntax to
be able to easily create values or these enums from the compiler. (I
don't know if it was the right way to do it, but it works and the
changes are small enough?).

I had a weird bug: `tests/language-feature/capability/address-of.slang`
was failing in `IRBuilder::_findOrEmitConstant(IRConstant&amp; keyInst)`.
When needing a new `u64(0)`, it did not find it in the `ConstantMap`
first, but then failed to add it right after because it already existed
in the map! But this was triggered by `IRPtrType*
IRBuilder::getPtrType(IROp op, IRType* valueType, AccessQualifier
accessQualifier, AddressSpace addressSpace)`, which is a strange
coincidence... but I could not find the issue in what I did. I ended up
bumping unordered_dense, and it solved the issue (so there was a bug in
there).</content>
</entry>
<entry>
<title>Enable static mimalloc in Spriv-Tools (#8419)</title>
<updated>2025-09-16T01:46:59+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-09-16T01:46:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=8ad0ae17880480abe587617c997ab28b23abc146'/>
<id>urn:sha1:8ad0ae17880480abe587617c997ab28b23abc146</id>
<content type='text'>
* Added optional mimalloc integration for SPIRV-Tools to improve
compilation performance
* Cloning `mimalloc` repo to external/ on demand during cmake config
* Enabled by default on Windows, configurable via
`SLANG_ENABLE_SPIRV_TOOLS_MIMALLOC` CMake option, to enable static
mimalloc build in spirv-tools.
* There are some crashes in Linux and Mac with static mimalloc enabled,
likely due to the system malloc and mimalloc mixed usage. This might be
expected as mimalloc in spirv-tools is not extensively tested according
to
https://github.com/KhronosGroup/SPIRV-Tools?tab=readme-ov-file#dependency-on-mimalloc.
So by default only Windows has this enabled.


Close: https://github.com/shader-slang/slang/issues/8158

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
</feed>
