RWByteAddressBuffer _5 : register(u0);

static uint3 gl_GlobalInvocationID;
struct SPIRV_Cross_Input
{
    uint3 gl_GlobalInvocationID : SV_DispatchThreadID;
};

void comp_main()
{
    uint _24;
    _5.InterlockedAdd(0, 1u, _24);
    if (_24 < 1024u)
    {
        _5.Store(_24 * 4 + 4, gl_GlobalInvocationID.x);
    }
}

[numthreads(1, 1, 1)]
void main(SPIRV_Cross_Input stage_input)
{
    gl_GlobalInvocationID = stage_input.gl_GlobalInvocationID;
    comp_main();
}
