dawn-cmake/test/intrinsics/gen/atomicMax/a89cc3.wgsl.expected.hlsl
Ben Clayton 89a0bde59c transform: Optimize ZeroInitWorkgroupMemory for arrays
Spread the array zeroing across as many workgroup invocations as possible.

Bug: tint:910
Change-Id: I1cb5a6aaafd2a0a4093ea3b9797c173378bc5605
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60203
Kokoro: Kokoro <noreply+kokoro@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
Reviewed-by: David Neto <dneto@google.com>
2021-07-30 14:08:06 +00:00

24 lines
525 B
HLSL

groupshared int arg_0;
void atomicMax_a89cc3() {
int atomic_result = 0;
InterlockedMax(arg_0, 1, atomic_result);
int res = atomic_result;
}
struct tint_symbol_1 {
uint local_invocation_index : SV_GroupIndex;
};
[numthreads(1, 1, 1)]
void compute_main(tint_symbol_1 tint_symbol) {
const uint local_invocation_index = tint_symbol.local_invocation_index;
{
int atomic_result_1 = 0;
InterlockedExchange(arg_0, 0, atomic_result_1);
}
GroupMemoryBarrierWithGroupSync();
atomicMax_a89cc3();
return;
}