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

62 lines
1.2 KiB
GLSL

#version 310 es
precision mediump float;
uvec2 tint_atomicCompareExchangeWeak(inout uint param_0, uint param_1, uint param_2) {
uvec2 result;
result.x = atomicCompSwap(param_0, param_1, param_2);
result.y = result.x == param_2 ? 1u : 0u;
return result;
}
struct SB_RW {
uint arg_0;
};
layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0;
} sb_rw;
void atomicCompareExchangeWeak_6673da() {
uvec2 res = tint_atomicCompareExchangeWeak(sb_rw.arg_0, 1u, 1u);
}
void fragment_main() {
atomicCompareExchangeWeak_6673da();
}
void main() {
fragment_main();
return;
}
#version 310 es
precision mediump float;
uvec2 tint_atomicCompareExchangeWeak(inout uint param_0, uint param_1, uint param_2) {
uvec2 result;
result.x = atomicCompSwap(param_0, param_1, param_2);
result.y = result.x == param_2 ? 1u : 0u;
return result;
}
struct SB_RW {
uint arg_0;
};
layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0;
} sb_rw;
void atomicCompareExchangeWeak_6673da() {
uvec2 res = tint_atomicCompareExchangeWeak(sb_rw.arg_0, 1u, 1u);
}
void compute_main() {
atomicCompareExchangeWeak_6673da();
}
layout(local_size_x = 1, local_size_y = 1, local_size_z = 1) in;
void main() {
compute_main();
return;
}