vkd3d/tests/hlsl/wave-ops-int.shader_test
2024-10-28 16:20:27 +01:00

58 lines
904 B
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) rgbai (-3, 1, -4, 2)
probe uav 1 (1) rgbai (-3, 1, -4, 2)
probe uav 1 (2) rgbai (-3, 1, -4, 2)
probe uav 1 (3) rgbai (-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) rgbai (3, 5, -1, 2)
probe uav 1 (1) rgbai (3, 5, -1, 2)
probe uav 1 (2) rgbai (3, 5, -1, 2)
probe uav 1 (3) rgbai (3, 5, -1, 2)