<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/tests/hlsl-intrinsic, 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-10T16:39:13+00:00</updated>
<entry>
<title>8503 wgsl depth texture (#8645)</title>
<updated>2025-10-10T16:39:13+00:00</updated>
<author>
<name>Sami Kiminki (NVIDIA)</name>
<email>235843927+skiminki-nv@users.noreply.github.com</email>
</author>
<published>2025-10-10T16:39:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=5c672cef1f6ac6b5cd6cd71bd47489b7b7331adb'/>
<id>urn:sha1:5c672cef1f6ac6b5cd6cd71bd47489b7b7331adb</id>
<content type='text'>
Add built-in type aliases for DepthTexture* and unify Sampler*Shadow
    
Add the following type aliases:
- DepthTexture1D, DepthTexture1DArray
- DepthTexture2D, DepthTexture2DArray
- DepthTexture2DMS, DepthTexture2DMSArray
- DepthTexture3D
- DepthTextureCube, DepthTextureCubeArray
    
These match with the type aliases for non-depth textures.
    
Also, unify the Sampler*Shadow type aliases with DepthTexture*
ones. This adds the following:
    
- Sampler2DMSShadow
- Sampler2DMSArrayShadow
    
and removes the Sampler3DArrayShadow type alias. As a side-effect, the
descriptions of Sampler*ArrayShadow type aliases are fixed
("texture-sampler for shadow" ==&gt; "texture-sampler array for shadow").

Update the slang tests to use the newly introduced type aliases instead
of
the custom type aliases that use _Texture&lt;&gt; directly.

Add DepthTexture testing in
hlsl-intrinsic/texture/texture-intrinsics. Do this by extracting the
test logic of computeMain() in a separate function and parametrize it
for non-depth/depth texture types. This adds basic coverage for the
following types:

- DepthTexture1D
- DepthTexture2D
- DepthTexture3D
- DepthTextureCube
- DepthTexture1DArray
- DepthTexture2DArray
- DepthTextureCubeArray

Issue #6166
Issue #8503</content>
</entry>
<entry>
<title>Disable branching subgroup test for WGSL (#8614)</title>
<updated>2025-10-07T08:55:28+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-10-07T08:55:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=36ed0362dcfe6a40570beb12c78d24c00ab051d6'/>
<id>urn:sha1:36ed0362dcfe6a40570beb12c78d24c00ab051d6</id>
<content type='text'>
WGSL doesn't allow subgroup related functions in a branching. It must be
used in a uniform flow. This commit disables a test for such case.

Note that the test was supposed to be disabled on the previous PR, but
it was mistakenly not disabled.
- #8386</content>
</entry>
<entry>
<title>Prefer IntegerType over LogicalType integer matrix mul() overloads (#8426)</title>
<updated>2025-10-06T11:07:55+00:00</updated>
<author>
<name>pdeayton-nv</name>
<email>205388607+pdeayton-nv@users.noreply.github.com</email>
</author>
<published>2025-10-06T11:07:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=7774d5b430c5aca22c8e00a7578702ecfc7b5e2a'/>
<id>urn:sha1:7774d5b430c5aca22c8e00a7578702ecfc7b5e2a</id>
<content type='text'>
Integer mul(matrix, matrix) and mul(vector, matrix) are not
disambiguated between __BuiltinIntegerType and __BuiltinLogicalType,
emitting an ambiguous call compilation error.

Use the OverloadRank attribute to prefer the IntegerType overload over
the LogicalType overload.

Fixes #8424</content>
</entry>
<entry>
<title>Enable metal tests (#8446)</title>
<updated>2025-09-30T18:21:27+00:00</updated>
<author>
<name>James Helferty (NVIDIA)</name>
<email>jhelferty@nvidia.com</email>
</author>
<published>2025-09-30T18:21:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=8086adc90b69f3199767c0617e2c429ce6b27f67'/>
<id>urn:sha1:8086adc90b69f3199767c0617e2c429ce6b27f67</id>
<content type='text'>
Enables all tests/metal/ tests that can be easily enabled.

These tests were not originally designed as render tests; they are
generally being enabled for pipecleaning purposes, and will not be
rigorously testing the corresponding funcitonality.

Where they cannot be enabled as render tests, and a metallib test wasn't
already enabled, a metallib test was enabled instead (where possible).

Fixes #7892</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>Disable a few WGSL testing using Wave functions in branches (#8386)</title>
<updated>2025-09-06T01:51:47+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-09-06T01:51:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=ffd58977b4e64af5a83ebc5478555fd667f58e51'/>
<id>urn:sha1:ffd58977b4e64af5a83ebc5478555fd667f58e51</id>
<content type='text'>
WGSL requires Wave functions to be used only in uniform control flow.

The latest compiler, Tint, started to error out when Wave functions are
used in a dynamic control flow.

This commit disables some of tests using Wave functions in dynamic
branches. If possible, they are altered to call Wave functions in
uniform control flows.</content>
</entry>
<entry>
<title>Enable CUDA support for additional HLSL intrinsic tests (#8293)</title>
<updated>2025-09-04T05:28:02+00:00</updated>
<author>
<name>Harsh Aggarwal (NVIDIA)</name>
<email>haaggarwal@nvidia.com</email>
</author>
<published>2025-09-04T05:28:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=5ec41675d817f82a7ce3c4d79c68548db0bd4227'/>
<id>urn:sha1:5ec41675d817f82a7ce3c4d79c68548db0bd4227</id>
<content type='text'>
Enable CUDA support for additional HLSL intrinsic tests by implementing
missing functionality and fixing compiler bugs affecting CUDA targets.

- Fix critical bug in InterlockedCompareStore64 where division used /4
instead of /8 for 64-bit types, causing incorrect memory addressing for
all signed int 64_t atomics
- Add signed int64_t atomic wrappers (atomicExch, atomicCAS) to CUDA
prelu de that properly cast to/from unsigned types as required by CUDA's
atomic API
- Enable tests: atomic-intrinsics-64bit.slang

- Implement CUDA support for QuadAny and QuadAll operations using warp
shu ffle primitives (__shfl_sync with quad-level lane masking)
- Add CUDA to quad_control capability definition in
slang-capabilities.capdef
- Add _slang_quadAny/_slang_quadAll helper functions to CUDA prelude
- Enable tests: quad-control-comp-functionality.slang,
subgroup-quad.slang

---------

Co-authored-by: szihs &lt;675653+szihs@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>render-test: Change D3D12 default to sm_6_5 (#8320)</title>
<updated>2025-09-02T23:43:48+00:00</updated>
<author>
<name>James Helferty (NVIDIA)</name>
<email>jhelferty@nvidia.com</email>
</author>
<published>2025-09-02T23:43:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=f02b08490aa905f42a8d90381db84b1f8e409c0c'/>
<id>urn:sha1:f02b08490aa905f42a8d90381db84b1f8e409c0c</id>
<content type='text'>
Changes default for render-test to sm_6_5.
Since sm_6_5 is the new default, remove the -use-dxil option, add
-use-dxcb option
Remove -use-dxil option from all test cases.
Add -use-dxcb to two tests that needed it.

Fixes #7611</content>
</entry>
<entry>
<title>Fix Metal 8-bit vector type names: emit char/uchar instead of int8_t/uint8_t (#8223)</title>
<updated>2025-08-26T18:58:44+00:00</updated>
<author>
<name>Copilot</name>
<email>198982749+Copilot@users.noreply.github.com</email>
</author>
<published>2025-08-26T18:58:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=4e9ee1dc80ce353640c1e2134249a1f93da9229a'/>
<id>urn:sha1:4e9ee1dc80ce353640c1e2134249a1f93da9229a</id>
<content type='text'>
The Metal backend was generating incorrect type names for 8-bit vector
types, causing compilation failures when targeting Metal. According to
the Metal specification, 8-bit vector types should be named `charN` and
`ucharN` (e.g., `char2`, `uchar3`) rather than `int8_tN` and `uint8_tN`.

## Problem

When compiling Slang code with 8-bit vector types for Metal, the
compiler would emit:
```metal
uint8_t2 _S8 = uint8_t2(uint8_t(0U), uint8_t(16U));
int8_t3 _S9 = int8_t3(int8_t(0), int8_t(16), int8_t(48));
```

But the Metal compiler expects:
```metal
uchar2 _S8 = uchar2(uint8_t(0U), uint8_t(16U));
char3 _S9 = char3(int8_t(0), int8_t(16), int8_t(48));
```

This caused errors like:
```
error: unknown type name 'uint8_t2'; did you mean 'uint8_t'?
```

## Solution

Modified `MetalSourceEmitter::emitSimpleTypeImpl()` to emit the correct
Metal-specific type names for 8-bit types:
- `kIROp_Int8Type` now emits `char` instead of `int8_t`
- `kIROp_UInt8Type` now emits `uchar` instead of `uint8_t`

This change only affects the Metal backend and ensures that vector types
like `int8_t2`, `uint8_t3`, etc. are correctly emitted as `char2`,
`uchar3`, etc.

## Testing

- Added a new test case `tests/metal/8bit-vector-types.slang` to verify
the fix
- Re-enabled the previously disabled Metal test in
`tests/hlsl-intrinsic/countbits8.slang`
- Updated `tests/metal/byte-address-buffer.slang` to expect the correct
type names
- Verified that existing Metal tests continue to pass

Fixes #8211.

&lt;!-- START COPILOT CODING AGENT TIPS --&gt;
---

💡 You can make Copilot smarter by setting up custom instructions,
customizing its development environment and configuring Model Context
Protocol (MCP) servers. Learn more [Copilot coding agent
tips](https://gh.io/copilot-coding-agent-tips) in the docs.

---------

Co-authored-by: copilot-swe-agent[bot] &lt;198982749+Copilot@users.noreply.github.com&gt;
Co-authored-by: bmillsNV &lt;163073245+bmillsNV@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Fix#8082: Batch-6: Enable cuda tests (#8266)</title>
<updated>2025-08-25T05:19:37+00:00</updated>
<author>
<name>Harsh Aggarwal (NVIDIA)</name>
<email>haaggarwal@nvidia.com</email>
</author>
<published>2025-08-25T05:19:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=53fa12e1b522a229006595001421caa62e22eba8'/>
<id>urn:sha1:53fa12e1b522a229006595001421caa62e22eba8</id>
<content type='text'>
</content>
</entry>
</feed>
