<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/docs/user-guide/a2-01-spirv-target-specific.md, 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-08-21T05:47:18+00:00</updated>
<entry>
<title>Introduce CDataLayout &amp; -fvk-use-c-layout (#8136)</title>
<updated>2025-08-21T05:47:18+00:00</updated>
<author>
<name>Julius Ikkala</name>
<email>julius.ikkala@gmail.com</email>
</author>
<published>2025-08-21T05:47:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=35f8e092f2aa3ed5e3cf03387e712f798ff4850e'/>
<id>urn:sha1:35f8e092f2aa3ed5e3cf03387e712f798ff4850e</id>
<content type='text'>
Closes #8112. ~~The issue asks for a "C layout", but in this PR I use
the term "CPU layout" because this naming was pre-existing in the
codebase as `kCPULayoutRulesImpl_`. The primary purpose of this layout
is to match CPU-side struct definitions with the shader side. I'm open
to better naming suggestions, though.~~

Edit: switched back to using `CDataLayout` &amp; `-fvk-use-c-layout`, as the
CPU target depends on the object layout rules of existing CPU layout
rules, but they're incompatible with actual shaders. So a new
`kCLayoutRulesImpl_` was needed anyway.

---------

Co-authored-by: Ellie Hermaszewska &lt;ellieh@nvidia.com&gt;</content>
</entry>
<entry>
<title>Implement SV_VulkanSamplePosition (#8236)</title>
<updated>2025-08-21T00:30:44+00:00</updated>
<author>
<name>davli-nv</name>
<email>davli@nvidia.com</email>
</author>
<published>2025-08-21T00:30:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=05f0f5603561daed2c134e13bc64649362759968'/>
<id>urn:sha1:05f0f5603561daed2c134e13bc64649362759968</id>
<content type='text'>
-Adds semantic SV_VulkanSamplePosition that emits corresponding
gl_SamplePosition and SpvBuiltinSamplePosition
-Adds gl_SamplePosition property to glsl.meta.slang
-Adds SPIRV and GLSL tests for the semantic and property
-Plan is to later implement SV_SamplePosition that follows HLSL range of
-0.5 to +0.5,
and emits GetRenderTargetSamplePosition(SV_SampleIndex) which needs more
complicated IR manipulation for HLSL and Metal

Fixes #7906

---------

Co-authored-by: ArielG-NV &lt;159081215+ArielG-NV@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Implement SPV_EXT_fragment_invocation_density (SPV_NV_shading_rate) (#8037)</title>
<updated>2025-08-05T17:55:52+00:00</updated>
<author>
<name>davli-nv</name>
<email>davli@nvidia.com</email>
</author>
<published>2025-08-05T17:55:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=83675103a1a4fefde11b314aed26f4d37860efe7'/>
<id>urn:sha1:83675103a1a4fefde11b314aed26f4d37860efe7</id>
<content type='text'>
* Implement SPV_EXT_fragment_invocation_density

-Adds semantics SV_FragSize and SV_FragInvocationCount and implements them for SPIRV and GLSL using the appropriate target builtins from extensions.
-Adds test case checking for expected target builtins from these semantics.
-For future work, could implement SV_FragSize using pixel shader input SV_ShadingRate for HLSL, and SV_FragInvocationCount needs research.

Fixes #7974

Generated with Claude Code

* address review feedback

https://github.com/shader-slang/slang/pull/8037#pullrequestreview-3084645845

* fixup format

* review feedback

https://github.com/shader-slang/slang/pull/8037#pullrequestreview-3086442819</content>
</entry>
<entry>
<title>Fix broken links in User Guide (#7938)</title>
<updated>2025-07-27T16:58:31+00:00</updated>
<author>
<name>aidanfnv</name>
<email>aidanf@nvidia.com</email>
</author>
<published>2025-07-27T16:58:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=6d399804a353154259cf4410940f144db8f9b5cf'/>
<id>urn:sha1:6d399804a353154259cf4410940f144db8f9b5cf</id>
<content type='text'>
* Fix broken links in User Guide

* Fix link text with filename, use title</content>
</entry>
<entry>
<title>Support the GLSL/SPIR-V Built-in variable `DeviceIndex` (#7552)</title>
<updated>2025-06-29T04:15:48+00:00</updated>
<author>
<name>ArielG-NV</name>
<email>159081215+ArielG-NV@users.noreply.github.com</email>
</author>
<published>2025-06-29T04:15:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=67af8c718ce5e3f95a25e5188840f63b41a33ecc'/>
<id>urn:sha1:67af8c718ce5e3f95a25e5188840f63b41a33ecc</id>
<content type='text'>
* Support DeviceIndex

* format code

* regenerate command line reference

---------

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Map `SV_VertexID` to `gl_VertexIndex-gl_BaseVertex`, add `SV_Vulkan*ID` semantics (#7150)</title>
<updated>2025-05-19T18:21:25+00:00</updated>
<author>
<name>Darren Wihandi</name>
<email>65404740+fairywreath@users.noreply.github.com</email>
</author>
<published>2025-05-19T18:21:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=634e3960c2bc322bbd51fccc7ff395d9f24e35dc'/>
<id>urn:sha1:634e3960c2bc322bbd51fccc7ff395d9f24e35dc</id>
<content type='text'>
* Map SV_VertexID to `gl_VertexIndex - gl_BaseVertex`, provide SV_Vulkan* SV semantics

* Fix docs

* Regenerate toc

* Fix affected pointer-2 test

* Add tests

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Support Vulkan memory model (#7057)</title>
<updated>2025-05-17T02:26:44+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-05-17T02:26:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d58243d9041947c99f18b82385e62c082507decb'/>
<id>urn:sha1:d58243d9041947c99f18b82385e62c082507decb</id>
<content type='text'>
The user can explicitly use Vulkan memory model, or it will be
automatically used when cooperative-matrix is used.

When vulkan memory model is used, two keywords, "Coherent" and
"Volatile", are not allowed.

There are many differences regarding atomic and texture but
this PR has changes limited to support `globallycoherent`
keyword. When variables with `globallycoherent` is used with `OpLoad`, it
will use additional options, `MakePointerAvailable|NonPrivatePointer`,
that will provide the same effect. For `OpStore`, it will use
`MakePointerVisible|NonPrivatePointer`.
</content>
</entry>
<entry>
<title>Add explanation for SV_InstanceID usage difference from SPIR-V (#7072)</title>
<updated>2025-05-14T15:06:59+00:00</updated>
<author>
<name>aidanfnv</name>
<email>aidanf@nvidia.com</email>
</author>
<published>2025-05-14T15:06:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=09d7e134de70a5de5f6d2bf4e099fcdbdefc9500'/>
<id>urn:sha1:09d7e134de70a5de5f6d2bf4e099fcdbdefc9500</id>
<content type='text'>
Closes https://github.com/shader-slang/slang/issues/6805

This change adds a note to the SPIR-V target specific doc that SV_InstanceID does not map directly to SPIR-V's BuiltIn InstanceIndex, and adds a more detailed explanation of the difference, its motivation, and how to derive the actual value equivalent to BuiltIn InstanceIndex with an example.

---------

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>Fix broken links in Slang docs (#7039)</title>
<updated>2025-05-08T17:00:49+00:00</updated>
<author>
<name>aidanfnv</name>
<email>aidanf@nvidia.com</email>
</author>
<published>2025-05-08T17:00:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=2b8152110b9a41672dd4dd5f528aa23caa8e88a3'/>
<id>urn:sha1:2b8152110b9a41672dd4dd5f528aa23caa8e88a3</id>
<content type='text'>
This change fixes some broken links/anchors in the Slang docs that I found after running a link checker tool on the readthedocs site.
Some of these were broken on GitHub Pages as well, such as anchors with apostrophes or docs that were moved.

The doc writer change adds an explicit .html extension to Parameter links, so that Sphinx/RTD does not treat it as an anchor.</content>
</entry>
<entry>
<title>Add SV_PointCoord to match gl_PointCoord (#6795)</title>
<updated>2025-04-14T14:59:13+00:00</updated>
<author>
<name>Julius Ikkala</name>
<email>julius.ikkala@gmail.com</email>
</author>
<published>2025-04-14T14:59:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=0f0818722268464775981520c2d6e975a9cf14fa'/>
<id>urn:sha1:0f0818722268464775981520c2d6e975a9cf14fa</id>
<content type='text'>
* Add gl_PointCoord support in GLSL compat mode

* Add SV_PointCoord

* Test on metal as well

* Update SPIRV system value semantics table in docs

* Update metal docs for SV_PointCoord</content>
</entry>
</feed>
