#include <metal_stdlib> using namespace metal; struct DrawIndirectArgs { /* 0x0000 */ atomic_uint vertexCount; }; kernel void computeMain(uint3 global_id [[thread_position_in_grid]], device DrawIndirectArgs& drawOut [[buffer(5)]]) { thread uint tint_symbol_1 = 0u; uint const firstVertex = atomic_fetch_add_explicit(&(drawOut.vertexCount), tint_symbol_1, memory_order_relaxed); return; }