diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/cross-compile/barriers.slang | 14 | ||||
| -rw-r--r-- | tests/cross-compile/barriers.slang.glsl | 14 |
2 files changed, 28 insertions, 0 deletions
diff --git a/tests/cross-compile/barriers.slang b/tests/cross-compile/barriers.slang new file mode 100644 index 000000000..f6fb9ac3c --- /dev/null +++ b/tests/cross-compile/barriers.slang @@ -0,0 +1,14 @@ +//TEST:CROSS_COMPILE:-target spirv-assembly -entry main -stage compute + +// Confirm that all HLSL barrier operations can be used when cross-compiling. + +[numthreads(1,1,1)] +void main() +{ + AllMemoryBarrier(); + AllMemoryBarrierWithGroupSync(); + DeviceMemoryBarrier(); + DeviceMemoryBarrierWithGroupSync(); + GroupMemoryBarrier(); + GroupMemoryBarrierWithGroupSync(); +} diff --git a/tests/cross-compile/barriers.slang.glsl b/tests/cross-compile/barriers.slang.glsl new file mode 100644 index 000000000..281e684db --- /dev/null +++ b/tests/cross-compile/barriers.slang.glsl @@ -0,0 +1,14 @@ +#version 450 + +layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in; +void main() +{ + (memoryBarrier(), groupMemoryBarrier(), memoryBarrierImage(), memoryBarrierBuffer()); + (memoryBarrier(), groupMemoryBarrier(), memoryBarrierImage(), memoryBarrierBuffer(), barrier()); + (memoryBarrier(), memoryBarrierImage(), memoryBarrierBuffer()); + (memoryBarrier(), memoryBarrierImage(), memoryBarrierBuffer(), barrier()); + groupMemoryBarrier(); + (groupMemoryBarrier(), barrier()); + + return; +} |
