dawn-cmake/test/buffer/storage/dynamic_index/write.wgsl.expected.glsl
Stephen White 46647f1c13 GLSL: put std430 packing on all buffer variables.
This is not 100% correct (the exceptions for mat2 and friends are not
implemented yet), but gets more tests passing in Dawn.

Bug: tint:1415
Change-Id: Ia11c63a5236f35e724431a65ddb6ef3c598775d0
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/79380
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
2022-02-04 23:09:23 +00:00

37 lines
826 B
GLSL

#version 310 es
precision mediump float;
struct Inner {
ivec3 a;
int b;
uvec3 c;
uint d;
vec3 e;
float f;
mat2x3 g;
mat3x2 h;
ivec4 i[4];
};
layout(binding = 0, std430) buffer S_1 {
Inner arr[];
} s;
void tint_symbol(uint idx) {
s.arr[idx].a = ivec3(0, 0, 0);
s.arr[idx].b = 0;
s.arr[idx].c = uvec3(0u, 0u, 0u);
s.arr[idx].d = 0u;
s.arr[idx].e = vec3(0.0f, 0.0f, 0.0f);
s.arr[idx].f = 0.0f;
s.arr[idx].g = mat2x3(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
s.arr[idx].h = mat3x2(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f);
ivec4 tint_symbol_1[4] = ivec4[4](ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0));
s.arr[idx].i = tint_symbol_1;
}
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
tint_symbol(gl_LocalInvocationIndex);
return;
}