mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-07-15 17:45:58 +00:00
Skipping those that are block-decorated is not correct, as block-decorated structures can also have non-buffer usages. This is even clearer now that WGSL has removed the block attribute. Bug: tint:1324 Change-Id: I6484766a5c541d39e2dc08beb3ae7b889759a3fb Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/72083 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
42 lines
637 B
GLSL
42 lines
637 B
GLSL
#version 310 es
|
|
precision mediump float;
|
|
|
|
struct Buf {
|
|
uint count;
|
|
uint data[50];
|
|
};
|
|
|
|
layout (binding = 0) buffer Buf_1 {
|
|
uint count;
|
|
uint data[50];
|
|
} b;
|
|
|
|
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
|
|
void tint_symbol() {
|
|
uint i = 0u;
|
|
while (true) {
|
|
if ((i >= b.count)) {
|
|
break;
|
|
}
|
|
uint p_save = i;
|
|
if (((i % 2u) == 0u)) {
|
|
{
|
|
b.data[p_save] = (b.data[p_save] * 2u);
|
|
i = (i + 1u);
|
|
}
|
|
continue;
|
|
}
|
|
b.data[p_save] = 0u;
|
|
{
|
|
b.data[p_save] = (b.data[p_save] * 2u);
|
|
i = (i + 1u);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
void main() {
|
|
tint_symbol();
|
|
}
|
|
|
|
|