Files
vkd3d/tests/hlsl/wave-ops-int.shader_test
2025-06-10 17:47:32 +02:00

122 lines
1.9 KiB
Plaintext

[require]
shader model >= 6.0
wave-ops
format r32g32b32a32-sint uav-load
[uav 0]
format r32g32b32a32-sint
size (buffer, 4)
-3 1 -4 2
3 1 -4 2
0 5 -3 2
-1 1 -1 2
[uav 1]
format r32g32b32a32-sint
size (buffer, 4)
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
[compute shader]
RWBuffer<int4> u0;
RWBuffer<int4> u1;
[numthreads(4, 1, 1)]
void main(uint id : SV_GroupIndex)
{
u1[id] = WaveActiveMin(u0[id]);
}
[test]
dispatch 4 1 1
probe uav 1 (0) i32(-3, 1, -4, 2)
probe uav 1 (1) i32(-3, 1, -4, 2)
probe uav 1 (2) i32(-3, 1, -4, 2)
probe uav 1 (3) i32(-3, 1, -4, 2)
[compute shader]
RWBuffer<int4> u0;
RWBuffer<int4> u1;
[numthreads(4, 1, 1)]
void main(uint id : SV_GroupIndex)
{
u1[id] = WaveActiveMax(u0[id]);
}
[test]
dispatch 4 1 1
probe uav 1 (0) i32(3, 5, -1, 2)
probe uav 1 (1) i32(3, 5, -1, 2)
probe uav 1 (2) i32(3, 5, -1, 2)
probe uav 1 (3) i32(3, 5, -1, 2)
[require]
shader model >= 6.0
wave-ops
int64
format r32g32b32a32-sint uav-load
[uav 0]
format r32g32b32a32-sint
size (buffer, 4)
-3 -1 -4 2
3 1 -4 2
0 5 -3 2
-1 -1 -1 2
[uav 1]
format r32g32b32a32-sint
size (buffer, 16)
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
[compute shader]
RWBuffer<int64_t2> u0;
RWBuffer<int64_t2> u1;
[numthreads(4, 1, 1)]
void main(uint id : SV_GroupIndex)
{
u1[id] = WaveActiveMin(u0[id]);
}
[test]
bug(mvk) dispatch 4 1 1
probe uav 1 (0) i32(-3, -1, -4, 2)
probe uav 1 (1) i32(-3, -1, -4, 2)
probe uav 1 (2) i32(-3, -1, -4, 2)
probe uav 1 (3) i32(-3, -1, -4, 2)
[compute shader]
RWBuffer<int64_t2> u0;
RWBuffer<int64_t2> u1;
[numthreads(4, 1, 1)]
void main(uint id : SV_GroupIndex)
{
u1[id] = WaveActiveMax(u0[id]);
}
[test]
bug(mvk) dispatch 4 1 1
probe uav 1 (0) i32(0, 5, -1, 2)
probe uav 1 (1) i32(0, 5, -1, 2)
probe uav 1 (2) i32(0, 5, -1, 2)
probe uav 1 (3) i32(0, 5, -1, 2)