dawn-cmake/test/bug/tint/221.wgsl.expected.hlsl
Ben Clayton 5d2f34ecf2 writer/hlsl: Simplify emission logic, clean up output
And fix issues where global variables would not be emitted unless they were transitively referenced by an entry point.

This change requires crbug.com/tint/697 to be fixed before landing.

Change-Id: I712bd9d369e08c9a3cdfb0f114c3609584f91f28
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/54241
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: James Price <jrprice@google.com>
2021-06-16 09:19:36 +00:00

26 lines
539 B
HLSL

RWByteAddressBuffer b : register(u0, space0);
[numthreads(1, 1, 1)]
void main() {
uint i = 0u;
while (true) {
if ((i >= b.Load(0u))) {
break;
}
const uint p_save = i;
if (((i % 2u) == 0u)) {
{
b.Store((4u + (4u * p_save)), asuint((b.Load((4u + (4u * p_save))) * 2u)));
i = (i + 1u);
}
continue;
}
b.Store((4u + (4u * p_save)), asuint(0u));
{
b.Store((4u + (4u * p_save)), asuint((b.Load((4u + (4u * p_save))) * 2u)));
i = (i + 1u);
}
}
return;
}