dawn-cmake/test/bug/tint/926.wgsl
Ben Clayton 07b59ca230 writer/spirv: Generate load of atomic value arguments
Fixed: tint:926
Change-Id: Ia27abe605ebfb46a7524b50500ecebd6e4656d1d
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/55883
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: David Neto <dneto@google.com>
Auto-Submit: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
2021-06-24 19:01:06 +00:00

15 lines
434 B
WebGPU Shading Language

[[block]] struct DrawIndirectArgs {
vertexCount : atomic<u32>;
};
[[group(0), binding(5)]] var<storage, read_write> drawOut : DrawIndirectArgs;
var<private> cubeVerts : u32 = 0u;
[[stage(compute)]]
fn computeMain([[builtin(global_invocation_id)]] global_id : vec3<u32>) {
// Increment cubeVerts based on some criteria...
// This fails SPIR-V validation
let firstVertex : u32 = atomicAdd(&drawOut.vertexCount, cubeVerts);
}