mirror of
https://gitlab.winehq.org/wine/vkd3d.git
synced 2025-09-12 18:50:22 -07:00
vkd3d-shader/hlsl: Support interlocked operations on non-indexed groupshared variables.
This commit is contained in:
Notes:
Henri Verbeet
2025-08-05 16:40:26 +02:00
Approved-by: Elizabeth Figura (@zfigura) Approved-by: Henri Verbeet (@hverbeet) Merge-Request: https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/1605
@@ -82,7 +82,7 @@ size (raw_buffer, 4)
|
||||
|
||||
1 0 0 0
|
||||
|
||||
[compute shader todo]
|
||||
[compute shader]
|
||||
RWByteAddressBuffer u : register(u1);
|
||||
groupshared uint m;
|
||||
|
||||
@@ -99,7 +99,7 @@ void main(uint local_idx : SV_GroupIndex, uint group_id : SV_GroupID)
|
||||
}
|
||||
|
||||
[test]
|
||||
todo(sm<6 | msl) dispatch 4 1 1
|
||||
todo(glsl | msl) dispatch 4 1 1
|
||||
probe uav 1 (0) u32(0)
|
||||
probe uav 1 (1) u32(33)
|
||||
probe uav 1 (2) u32(66)
|
||||
@@ -112,7 +112,7 @@ size (raw_buffer, 4)
|
||||
|
||||
1 0 0 0
|
||||
|
||||
[compute shader todo]
|
||||
[compute shader]
|
||||
RWByteAddressBuffer u : register(u1);
|
||||
groupshared int m;
|
||||
|
||||
@@ -129,7 +129,7 @@ void main(uint local_idx : SV_GroupIndex, uint group_id : SV_GroupID)
|
||||
}
|
||||
|
||||
[test]
|
||||
todo(sm<6 | msl) dispatch 4 1 1
|
||||
todo(glsl | msl) dispatch 4 1 1
|
||||
probe uav 1 (0) i32(0)
|
||||
probe uav 1 (1) i32(-31)
|
||||
probe uav 1 (2) i32(-62)
|
||||
@@ -216,7 +216,7 @@ size (raw_buffer, 1)
|
||||
|
||||
0
|
||||
|
||||
[compute shader todo]
|
||||
[compute shader]
|
||||
RWByteAddressBuffer u : register(u1);
|
||||
groupshared uint m;
|
||||
|
||||
@@ -234,7 +234,7 @@ void main(uint local_idx : SV_GroupIndex)
|
||||
}
|
||||
|
||||
[test]
|
||||
todo(sm<6 | msl) dispatch 1 1 1
|
||||
todo(glsl | msl) dispatch 1 1 1
|
||||
probe uav 1 (0) u32(39)
|
||||
|
||||
[uav 0]
|
||||
|
Reference in New Issue
Block a user