<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/source, 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-12-18T06:27:10+00:00</updated>
<entry>
<title>fix compiler bug lol</title>
<updated>2025-12-18T06:27:10+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-12-18T06:27:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=f8cb9c4d61c412e370e9e09a41b40a3818a70f34'/>
<id>urn:sha1:f8cb9c4d61c412e370e9e09a41b40a3818a70f34</id>
<content type='text'>
</content>
</entry>
<entry>
<title>meow</title>
<updated>2025-10-31T22:33:07+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-10-31T22:33:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d680309ff1440333f2ab1537c63cb46f02e0b8a0'/>
<id>urn:sha1:d680309ff1440333f2ab1537c63cb46f02e0b8a0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>non-exported public labels get namespaced now</title>
<updated>2025-10-29T02:45:29+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-10-29T02:45:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=0a2506e2fce7d754489066c51f51574bdd428bc0'/>
<id>urn:sha1:0a2506e2fce7d754489066c51f51574bdd428bc0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix compiler break</title>
<updated>2025-10-29T01:39:00+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-10-29T01:39:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=72ea1c81cafa23ea2398071b5f170b5ceba41f14'/>
<id>urn:sha1:72ea1c81cafa23ea2398071b5f170b5ceba41f14</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improve unhandled instruction error message</title>
<updated>2025-10-18T01:37:45+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-10-18T01:32:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=668e7b4251e5fd1255fb7b265178c581061bfe10'/>
<id>urn:sha1:668e7b4251e5fd1255fb7b265178c581061bfe10</id>
<content type='text'>
It now includes the opcode in human-readable form.
</content>
</entry>
<entry>
<title>Optionally disable entry point param cbuffer transform</title>
<updated>2025-10-18T01:37:45+00:00</updated>
<author>
<name>yum</name>
<email>yum.food.vr@gmail.com</email>
</author>
<published>2025-10-11T20:34:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=482914e1b42dd44f4696b48c834136631672cebe'/>
<id>urn:sha1:482914e1b42dd44f4696b48c834136631672cebe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix infinite loop in SPIRVLegalizationContext::processWorkList (#8712)</title>
<updated>2025-10-17T01:22:39+00:00</updated>
<author>
<name>davli-nv</name>
<email>davli@nvidia.com</email>
</author>
<published>2025-10-17T01:22:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=ff064b9a0f1316007f46710432f854777a520fdf'/>
<id>urn:sha1:ff064b9a0f1316007f46710432f854777a520fdf</id>
<content type='text'>
When slangc is invoked with -g, a source shader that has static infinite
loop can generate IR that have branch to a block that contains a branch
to the first block that contains the first branch, resulting in infinite
loop.

Change SPIRVLegalizationContext::processWorkList to only add branch
target to work list via its parent, this avoids the infinite loop above.

Also change addToWorkList to stop addUsersToWorkList, users should be
added explicitly by logic for specific insts.

Add regression test as tests/spirv/infinite-loop.slang

Fixes #8669</content>
</entry>
<entry>
<title>Inline global constants for shader style CPU targets (#8686)</title>
<updated>2025-10-16T18:53:10+00:00</updated>
<author>
<name>Julius Ikkala</name>
<email>julius.ikkala@gmail.com</email>
</author>
<published>2025-10-16T18:53:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=537697d3aa21b418c348b1017005603668b6a4cb'/>
<id>urn:sha1:537697d3aa21b418c348b1017005603668b6a4cb</id>
<content type='text'>
On the shader-host-callable target, test `gh-4874.slang` generates IR
that contains global constants referencing global params. These need to
get inlined into functions, as otherwise
`introduceExplicitGlobalContext()` will fail with "no outer func at use
site for global", making the test crash the compiler.</content>
</entry>
<entry>
<title>Fix wrong diagnostic when checking identical casting expr. (#8727)</title>
<updated>2025-10-16T18:52:38+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2025-10-16T18:52:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=0257cb001b6f5c31e4ac0435d546fe638a17c48a'/>
<id>urn:sha1:0257cb001b6f5c31e4ac0435d546fe638a17c48a</id>
<content type='text'>
`SemanticsVisitor::CheckInvokeExprWithCheckedOperands` made several
references to `expr` parameter in its `inout` parameter l-value-ness
validation logic to access arguments, which is wrong because `expr` is
not necessarily the same as `result`/`invoke` (the result of calling
`ResolveInvoke()` in the first line of the function. Changing it to
`invoke` for consistency.

Also add a special case logic to return early in case the resolved
invoke expr is `argument[0]` when the original invoke expr is
`T(funcThatReturnsT())`.

Closes #8659.</content>
</entry>
<entry>
<title>Fix use of variadic generics with [Differentiable]. (#8736)</title>
<updated>2025-10-16T18:23:13+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2025-10-16T18:23:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=bedc3421c9e1e0837fa69e30396a27a60f0fee53'/>
<id>urn:sha1:bedc3421c9e1e0837fa69e30396a27a60f0fee53</id>
<content type='text'>
There was a bug that causes the compiler failing to treat a `no_diff
TypePack` as a type pack, and thus diagnose an error when resolving the
following call.

The fix is to unwrap any ModifiedType wrappers in `IsTypePack()` check.</content>
</entry>
</feed>
