wgpu/naga/tests/out/hlsl/wgsl-atomicTexture.hlsl
2025-04-03 15:08:23 +00:00

28 lines
991 B
HLSL

struct NagaConstants {
int first_vertex;
int first_instance;
uint other;
};
ConstantBuffer<NagaConstants> _NagaConstants: register(b0, space1);
RWTexture2D<uint> image_u : register(u0);
RWTexture2D<int> image_s : register(u1);
[numthreads(2, 1, 1)]
void cs_main(uint3 id : SV_GroupThreadID)
{
InterlockedMax(image_u[int2(int(0), int(0))],1u);
InterlockedMin(image_u[int2(int(0), int(0))],1u);
InterlockedAdd(image_u[int2(int(0), int(0))],1u);
InterlockedAnd(image_u[int2(int(0), int(0))],1u);
InterlockedOr(image_u[int2(int(0), int(0))],1u);
InterlockedXor(image_u[int2(int(0), int(0))],1u);
InterlockedMax(image_s[int2(int(0), int(0))],int(1));
InterlockedMin(image_s[int2(int(0), int(0))],int(1));
InterlockedAdd(image_s[int2(int(0), int(0))],int(1));
InterlockedAnd(image_s[int2(int(0), int(0))],int(1));
InterlockedOr(image_s[int2(int(0), int(0))],int(1));
InterlockedXor(image_s[int2(int(0), int(0))],int(1));
return;
}