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>
This commit is contained in:
Stephen White 2022-02-04 23:09:23 +00:00 committed by Tint LUCI CQ
parent c6d967b4dd
commit 46647f1c13
199 changed files with 539 additions and 536 deletions

View File

@ -1752,7 +1752,7 @@ bool GeneratorImpl::EmitStorageVariable(const sem::Variable* var) {
return false; return false;
} }
ast::VariableBindingPoint bp = decl->BindingPoint(); ast::VariableBindingPoint bp = decl->BindingPoint();
line() << "layout(binding = " << bp.binding->value << ") buffer " line() << "layout(binding = " << bp.binding->value << ", std430) buffer "
<< UniqueIdentifier(StructName(str)) << " {"; << UniqueIdentifier(StructName(str)) << " {";
EmitStructMembers(current_buffer_, str); EmitStructMembers(current_buffer_, str);
auto name = builder_.Symbols().NameFor(decl->symbol); auto name = builder_.Symbols().NameFor(decl->symbol);

View File

@ -468,7 +468,7 @@ struct Data {
float b; float b;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
int a; int a;
float b; float b;
} coord; } coord;
@ -523,7 +523,7 @@ struct Data {
float b; float b;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
int a; int a;
float b; float b;
} coord; } coord;
@ -574,7 +574,7 @@ struct Data {
float b; float b;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
int a; int a;
float b; float b;
} coord; } coord;
@ -626,7 +626,7 @@ struct Data {
float b; float b;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
int a; int a;
float b; float b;
} coord; } coord;
@ -733,7 +733,7 @@ struct S {
float x; float x;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
float x; float x;
} coord; } coord;
float sub_func(float param) { float sub_func(float param) {
@ -980,7 +980,7 @@ struct Data {
float d; float d;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
float d; float d;
} data; } data;
void a() { void a() {

View File

@ -299,7 +299,7 @@ struct Data {
mat2x3 b; mat2x3 b;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
int a; int a;
mat2x3 b; mat2x3 b;
} data; } data;
@ -347,7 +347,7 @@ struct Data {
mat4x3 a; mat4x3 a;
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
float z; float z;
mat4x3 a; mat4x3 a;
} data; } data;
@ -393,7 +393,7 @@ struct Data {
int a[5]; int a[5];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
float z; float z;
int a[5]; int a[5];
} data; } data;
@ -440,7 +440,7 @@ struct Data {
int a[5]; int a[5];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
float z; float z;
int a[5]; int a[5];
} data; } data;
@ -484,7 +484,7 @@ struct Data {
int a[5]; int a[5];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
float z; float z;
int a[5]; int a[5];
} data; } data;
@ -543,7 +543,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {
@ -604,7 +604,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {
@ -665,7 +665,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {
@ -726,7 +726,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {
@ -783,7 +783,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {
@ -844,7 +844,7 @@ struct Data {
Inner c[4]; Inner c[4];
}; };
layout(binding = 0) buffer Data_1 { layout(binding = 0, std430) buffer Data_1 {
Inner c[4]; Inner c[4];
} data; } data;
void tint_symbol() { void tint_symbol() {

View File

@ -51,7 +51,7 @@ TEST_F(GlslSanitizerTest, Call_ArrayLength) {
auto* expect = R"(#version 310 es auto* expect = R"(#version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer my_struct_1 { layout(binding = 1, std430) buffer my_struct_1 {
float a[]; float a[];
} b; } b;
void a_func() { void a_func() {
@ -99,7 +99,7 @@ TEST_F(GlslSanitizerTest, Call_ArrayLength_OtherMembersInStruct) {
auto* expect = R"(#version 310 es auto* expect = R"(#version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer my_struct_1 { layout(binding = 1, std430) buffer my_struct_1 {
float z; float z;
float a[]; float a[];
} b; } b;
@ -150,7 +150,7 @@ TEST_F(GlslSanitizerTest, Call_ArrayLength_ViaLets) {
auto* expect = R"(#version 310 es auto* expect = R"(#version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer my_struct_1 { layout(binding = 1, std430) buffer my_struct_1 {
float a[]; float a[];
} b; } b;
void a_func() { void a_func() {

View File

@ -15,7 +15,7 @@ layout(binding = 0) uniform S_1 {
ivec4 arr[4]; ivec4 arr[4];
} src_uniform; } src_uniform;
layout(binding = 1) buffer S_2 { layout(binding = 1, std430) buffer S_2 {
ivec4 arr[4]; ivec4 arr[4];
} src_storage; } src_storage;
ivec4[4] ret_arr() { ivec4[4] ret_arr() {

View File

@ -15,7 +15,7 @@ layout(binding = 0) uniform S_1 {
ivec4 arr[4]; ivec4 arr[4];
} src_uniform; } src_uniform;
layout(binding = 1) buffer S_2 { layout(binding = 1, std430) buffer S_2 {
ivec4 arr[4]; ivec4 arr[4];
} src_storage; } src_storage;
ivec4 dst[4] = ivec4[4](ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0)); ivec4 dst[4] = ivec4[4](ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0));

View File

@ -19,13 +19,13 @@ layout(binding = 0) uniform S_1 {
ivec4 arr[4]; ivec4 arr[4];
} src_uniform; } src_uniform;
layout(binding = 1) buffer S_2 { layout(binding = 1, std430) buffer S_2 {
ivec4 arr[4]; ivec4 arr[4];
} src_storage; } src_storage;
layout(binding = 2) buffer S_3 { layout(binding = 2, std430) buffer S_3 {
ivec4 arr[4]; ivec4 arr[4];
} dst; } dst;
layout(binding = 3) buffer S_nested_1 { layout(binding = 3, std430) buffer S_nested_1 {
int arr[4][3][2]; int arr[4][3][2];
} dst_nested; } dst_nested;
ivec4[4] ret_arr() { ivec4[4] ret_arr() {

View File

@ -15,7 +15,7 @@ layout(binding = 0) uniform S_1 {
ivec4 arr[4]; ivec4 arr[4];
} src_uniform; } src_uniform;
layout(binding = 1) buffer S_2 { layout(binding = 1, std430) buffer S_2 {
ivec4 arr[4]; ivec4 arr[4];
} src_storage; } src_storage;
shared ivec4 dst[4]; shared ivec4 dst[4];

View File

@ -13,7 +13,7 @@ struct S {
strided_arr_1 a[4]; strided_arr_1 a[4];
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
strided_arr_1 a[4]; strided_arr_1 a[4];
} s; } s;
void f_1() { void f_1() {

View File

@ -165,7 +165,7 @@ layout(binding = 0) uniform SimulationParams_1 {
vec4 seed; vec4 seed;
} sim_params; } sim_params;
layout(binding = 1) buffer Particles_1 { layout(binding = 1, std430) buffer Particles_1 {
Particle particles[]; Particle particles[];
} data; } data;
struct UBO { struct UBO {
@ -257,10 +257,10 @@ layout(binding = 3) uniform UBO_1 {
uint width; uint width;
} ubo; } ubo;
layout(binding = 4) buffer Buffer_1 { layout(binding = 4, std430) buffer Buffer_1 {
float weights[]; float weights[];
} buf_in; } buf_in;
layout(binding = 5) buffer Buffer_2 { layout(binding = 5, std430) buffer Buffer_2 {
float weights[]; float weights[];
} buf_out; } buf_out;
uniform highp sampler2D tex_in_1; uniform highp sampler2D tex_in_1;
@ -315,10 +315,10 @@ layout(binding = 3) uniform UBO_1 {
uint width; uint width;
} ubo; } ubo;
layout(binding = 4) buffer Buffer_1 { layout(binding = 4, std430) buffer Buffer_1 {
float weights[]; float weights[];
} buf_in; } buf_in;
layout(binding = 5) buffer Buffer_2 { layout(binding = 5, std430) buffer Buffer_2 {
float weights[]; float weights[];
} buf_out; } buf_out;
layout(rgba8) uniform highp writeonly image2D tex_out; layout(rgba8) uniform highp writeonly image2D tex_out;

View File

@ -57,7 +57,7 @@ struct ClusterLightGroup {
uint indices[1769472]; uint indices[1769472];
}; };
layout(binding = 1) buffer ClusterLightGroup_1 { layout(binding = 1, std430) buffer ClusterLightGroup_1 {
uint offset; uint offset;
ClusterLights lights[27648]; ClusterLights lights[27648];
uint indices[1769472]; uint indices[1769472];
@ -69,7 +69,7 @@ struct Light {
float intensity; float intensity;
}; };
layout(binding = 2) buffer GlobalLights_1 { layout(binding = 2, std430) buffer GlobalLights_1 {
vec3 ambient; vec3 ambient;
vec3 dirColor; vec3 dirColor;
float dirIntensity; float dirIntensity;
@ -94,7 +94,7 @@ uint getClusterIndex(vec4 fragCoord) {
return ((tile.x + (tile.y * tileCount.x)) + ((tile.z * tileCount.x) * tileCount.y)); return ((tile.x + (tile.y * tileCount.x)) + ((tile.z * tileCount.x) * tileCount.y));
} }
layout(binding = 6) buffer LightShadowTable_1 { layout(binding = 6, std430) buffer LightShadowTable_1 {
int light[]; int light[];
} lightShadowTable; } lightShadowTable;
vec2 shadowSampleOffsets[16] = vec2[16](vec2(-1.5f, -1.5f), vec2(-1.5f, -0.5f), vec2(-1.5f, 0.5f), vec2(-1.5f, 1.5f), vec2(-0.5f, -1.5f), vec2(-0.5f, -0.5f), vec2(-0.5f, 0.5f), vec2(-0.5f, 1.5f), vec2(0.5f, -1.5f), vec2(0.5f, -0.5f), vec2(0.5f, 0.5f), vec2(0.5f, 1.5f), vec2(1.5f, -1.5f), vec2(1.5f, -0.5f), vec2(1.5f, 0.5f), vec2(1.5f, 1.5f)); vec2 shadowSampleOffsets[16] = vec2[16](vec2(-1.5f, -1.5f), vec2(-1.5f, -0.5f), vec2(-1.5f, 0.5f), vec2(-1.5f, 1.5f), vec2(-0.5f, -1.5f), vec2(-0.5f, -0.5f), vec2(-0.5f, 0.5f), vec2(-0.5f, 1.5f), vec2(0.5f, -1.5f), vec2(0.5f, -0.5f), vec2(0.5f, 0.5f), vec2(0.5f, 1.5f), vec2(1.5f, -1.5f), vec2(1.5f, -0.5f), vec2(1.5f, 0.5f), vec2(1.5f, 1.5f));
@ -104,7 +104,7 @@ struct ShadowProperties {
mat4 viewProj; mat4 viewProj;
}; };
layout(binding = 7) buffer LightShadows_1 { layout(binding = 7, std430) buffer LightShadows_1 {
ShadowProperties properties[]; ShadowProperties properties[];
} shadow; } shadow;
uniform highp sampler2D shadowTexture_1; uniform highp sampler2D shadowTexture_1;

View File

@ -13,7 +13,7 @@ struct Inner {
ivec4 i[4]; ivec4 i[4];
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
Inner arr[]; Inner arr[];
} s; } s;
void tint_symbol(uint idx) { void tint_symbol(uint idx) {

View File

@ -13,7 +13,7 @@ struct Inner {
ivec4 i[4]; ivec4 i[4];
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
Inner arr[]; Inner arr[];
} s; } s;
void tint_symbol(uint idx) { void tint_symbol(uint idx) {

View File

@ -18,7 +18,7 @@ struct S {
Inner j[4]; Inner j[4];
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
ivec3 a; ivec3 a;
int b; int b;
uvec3 c; uvec3 c;

View File

@ -18,7 +18,7 @@ struct S {
Inner j[4]; Inner j[4];
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
ivec3 a; ivec3 a;
int b; int b;
uvec3 c; uvec3 c;

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
float inner[4]; float inner[4];
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
float inner[4]; float inner[4];
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
float inner[4]; float inner[4];
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
float inner; float inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
float inner; float inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
float inner; float inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
int inner; int inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
int inner; int inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
int inner; int inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
mat2 inner; mat2 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
mat2 inner; mat2 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
mat2 inner; mat2 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
mat2x3 inner; mat2x3 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
mat2x3 inner; mat2x3 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
mat2x3 inner; mat2x3 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
mat3x2 inner; mat3x2 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
mat3x2 inner; mat3x2 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
mat3x2 inner; mat3x2 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
mat4 inner; mat4 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
mat4 inner; mat4 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
mat4 inner; mat4 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct S {
float f; float f;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
S inner[]; S inner[];
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
S inner[]; S inner[];
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -11,10 +11,10 @@ struct S {
Inner inner; Inner inner;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
Inner inner; Inner inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer S_2 { layout(binding = 1, std430) buffer S_2 {
Inner inner; Inner inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {
@ -27,7 +27,7 @@ void main() {
return; return;
} }
Error parsing GLSL shader: Error parsing GLSL shader:
ERROR: 0:19: 'assign' : cannot convert from 'layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer structure{ global mediump float f} inner}' to 'layout( binding=1 column_major shared) buffer block{layout( column_major shared) buffer structure{ global mediump float f} inner}' ERROR: 0:19: 'assign' : cannot convert from 'layout( binding=0 column_major std430) buffer block{layout( column_major std430 offset=0) buffer structure{ global mediump float f} inner}' to 'layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer structure{ global mediump float f} inner}'
ERROR: 0:19: '' : compilation terminated ERROR: 0:19: '' : compilation terminated
ERROR: 2 compilation errors. No code generated. ERROR: 2 compilation errors. No code generated.

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
uint inner; uint inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
uint inner; uint inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
uint inner; uint inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
ivec2 inner; ivec2 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
ivec2 inner; ivec2 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
ivec2 inner; ivec2 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
uvec3 inner; uvec3 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
uvec3 inner; uvec3 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
uvec3 inner; uvec3 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -5,10 +5,10 @@ struct tint_symbol_block {
vec4 inner; vec4 inner;
}; };
layout(binding = 0) buffer tint_symbol_block_1 { layout(binding = 0, std430) buffer tint_symbol_block_1 {
vec4 inner; vec4 inner;
} tint_symbol; } tint_symbol;
layout(binding = 1) buffer tint_symbol_block_2 { layout(binding = 1, std430) buffer tint_symbol_block_2 {
vec4 inner; vec4 inner;
} tint_symbol_1; } tint_symbol_1;
void tint_symbol_2() { void tint_symbol_2() {

View File

@ -54,19 +54,19 @@ layout(binding = 0) uniform Uniforms_1 {
vec3 bbMax; vec3 bbMax;
} uniforms; } uniforms;
layout(binding = 10) buffer U32s_1 { layout(binding = 10, std430) buffer U32s_1 {
uint values[]; uint values[];
} indices; } indices;
layout(binding = 11) buffer F32s_1 { layout(binding = 11, std430) buffer F32s_1 {
float values[]; float values[];
} positions; } positions;
layout(binding = 20) buffer AU32s_1 { layout(binding = 20, std430) buffer AU32s_1 {
uint values[]; uint values[];
} counters; } counters;
layout(binding = 21) buffer AI32s_1 { layout(binding = 21, std430) buffer AI32s_1 {
int values[]; int values[];
} LUT; } LUT;
layout(binding = 50) buffer Dbg_1 { layout(binding = 50, std430) buffer Dbg_1 {
uint offsetCounter; uint offsetCounter;
uint pad0; uint pad0;
uint pad1; uint pad1;

View File

@ -7,7 +7,7 @@ struct S {
float f; float f;
}; };
layout(binding = 0) buffer arr_block_1 { layout(binding = 0, std430) buffer arr_block_1 {
S inner[]; S inner[];
} arr; } arr;
void tint_symbol() { void tint_symbol() {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
void f() { void f() {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)); S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0));

View File

@ -13,14 +13,14 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 2) buffer Result_1 { layout(binding = 2, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
struct SSBO { struct SSBO {
int data[4]; int data[4];
}; };
layout(binding = 1) buffer SSBO_1 { layout(binding = 1, std430) buffer SSBO_1 {
int data[4]; int data[4];
} ssbo; } ssbo;
void f() { void f() {

View File

@ -15,7 +15,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 2) buffer Result_1 { layout(binding = 2, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
void f() { void f() {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
shared S s; shared S s;

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
void f() { void f() {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
void x(inout S p) { void x(inout S p) {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)); S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0));

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)); S s = S(int[64](0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0));

View File

@ -13,14 +13,14 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 2) buffer Result_1 { layout(binding = 2, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
struct SSBO { struct SSBO {
int data[4]; int data[4];
}; };
layout(binding = 1) buffer SSBO_1 { layout(binding = 1, std430) buffer SSBO_1 {
int data[4]; int data[4];
} ssbo; } ssbo;
void f() { void f() {

View File

@ -17,7 +17,7 @@ struct Result {
int tint_symbol; int tint_symbol;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
int tint_symbol; int tint_symbol;
} result; } result;
shared S s; shared S s;

View File

@ -12,7 +12,7 @@ struct Particle {
vec3 velocity; vec3 velocity;
}; };
layout(binding = 3) buffer Particles_1 { layout(binding = 3, std430) buffer Particles_1 {
Particle p[]; Particle p[];
} particles; } particles;
layout(binding = 4) uniform Simulation_1 { layout(binding = 4) uniform Simulation_1 {

View File

@ -26,7 +26,7 @@ layout(binding = 0) uniform Uniforms_1 {
vec4 color; vec4 color;
} uniforms; } uniforms;
layout(binding = 1) buffer PointLights_1 { layout(binding = 1, std430) buffer PointLights_1 {
PointLight values[]; PointLight values[];
} pointLights; } pointLights;
struct FragmentInput { struct FragmentInput {

View File

@ -34,19 +34,19 @@ layout(binding = 0) uniform Uniforms_1 {
vec3 bbMax; vec3 bbMax;
} uniforms; } uniforms;
layout(binding = 10) buffer U32s_1 { layout(binding = 10, std430) buffer U32s_1 {
uint values[]; uint values[];
} indices; } indices;
layout(binding = 11) buffer F32s_1 { layout(binding = 11, std430) buffer F32s_1 {
float values[]; float values[];
} positions; } positions;
layout(binding = 20) buffer AU32s_1 { layout(binding = 20, std430) buffer AU32s_1 {
uint values[]; uint values[];
} counters; } counters;
layout(binding = 21) buffer AI32s_1 { layout(binding = 21, std430) buffer AI32s_1 {
int values[]; int values[];
} LUT; } LUT;
layout(binding = 50) buffer Dbg_1 { layout(binding = 50, std430) buffer Dbg_1 {
uint offsetCounter; uint offsetCounter;
uint pad0; uint pad0;
uint pad1; uint pad1;
@ -156,19 +156,19 @@ layout(binding = 0) uniform Uniforms_1 {
vec3 bbMax; vec3 bbMax;
} uniforms; } uniforms;
layout(binding = 10) buffer U32s_1 { layout(binding = 10, std430) buffer U32s_1 {
uint values[]; uint values[];
} indices; } indices;
layout(binding = 11) buffer F32s_1 { layout(binding = 11, std430) buffer F32s_1 {
float values[]; float values[];
} positions; } positions;
layout(binding = 20) buffer AU32s_1 { layout(binding = 20, std430) buffer AU32s_1 {
uint values[]; uint values[];
} counters; } counters;
layout(binding = 21) buffer AI32s_1 { layout(binding = 21, std430) buffer AI32s_1 {
int values[]; int values[];
} LUT; } LUT;
layout(binding = 50) buffer Dbg_1 { layout(binding = 50, std430) buffer Dbg_1 {
uint offsetCounter; uint offsetCounter;
uint pad0; uint pad0;
uint pad1; uint pad1;
@ -247,19 +247,19 @@ layout(binding = 0) uniform Uniforms_1 {
vec3 bbMax; vec3 bbMax;
} uniforms; } uniforms;
layout(binding = 10) buffer U32s_1 { layout(binding = 10, std430) buffer U32s_1 {
uint values[]; uint values[];
} indices; } indices;
layout(binding = 11) buffer F32s_1 { layout(binding = 11, std430) buffer F32s_1 {
float values[]; float values[];
} positions; } positions;
layout(binding = 20) buffer AU32s_1 { layout(binding = 20, std430) buffer AU32s_1 {
uint values[]; uint values[];
} counters; } counters;
layout(binding = 21) buffer AI32s_1 { layout(binding = 21, std430) buffer AI32s_1 {
int values[]; int values[];
} LUT; } LUT;
layout(binding = 50) buffer Dbg_1 { layout(binding = 50, std430) buffer Dbg_1 {
uint offsetCounter; uint offsetCounter;
uint pad0; uint pad0;
uint pad1; uint pad1;

View File

@ -7,7 +7,7 @@ struct LightData {
float radius; float radius;
}; };
layout(binding = 0) buffer LightsBuffer_1 { layout(binding = 0, std430) buffer LightsBuffer_1 {
LightData lights[]; LightData lights[];
} lightsBuffer; } lightsBuffer;
struct TileLightIdData { struct TileLightIdData {
@ -19,7 +19,7 @@ struct Tiles {
TileLightIdData data[4]; TileLightIdData data[4];
}; };
layout(binding = 0) buffer Tiles_1 { layout(binding = 0, std430) buffer Tiles_1 {
TileLightIdData data[4]; TileLightIdData data[4];
} tileLightId; } tileLightId;
struct Config { struct Config {

View File

@ -9,7 +9,7 @@ struct Buffer {
uint data; uint data;
}; };
layout(binding = 0) buffer Buffer_1 { layout(binding = 0, std430) buffer Buffer_1 {
uint data; uint data;
} tint_symbol; } tint_symbol;
void tint_symbol_1() { void tint_symbol_1() {

View File

@ -1,7 +1,7 @@
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer data_block_1 { layout(binding = 1, std430) buffer data_block_1 {
int inner[]; int inner[];
} data; } data;
int foo() { int foo() {

View File

@ -6,7 +6,7 @@ struct Buf {
uint data[50]; uint data[50];
}; };
layout(binding = 0) buffer Buf_1 { layout(binding = 0, std430) buffer Buf_1 {
uint count; uint count;
uint data[50]; uint data[50];
} b; } b;

View File

@ -10,6 +10,6 @@ struct Light {
vec3 colour; vec3 colour;
}; };
layout(binding = 1) buffer Lights_1 { layout(binding = 1, std430) buffer Lights_1 {
Light light[]; Light light[];
} lights; } lights;

View File

@ -9,7 +9,7 @@ struct S {
mat2 m; mat2 m;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
mat2 m; mat2 m;
} SSBO; } SSBO;
layout(binding = 0) uniform S_2 { layout(binding = 0) uniform S_2 {

View File

@ -5,7 +5,7 @@ struct S {
int a; int a;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a; int a;
} buf; } buf;
void tint_symbol() { void tint_symbol() {

View File

@ -8,7 +8,7 @@ struct Uniforms {
uint channelCount; uint channelCount;
}; };
layout(binding = 2) buffer OutputBuf_1 { layout(binding = 2, std430) buffer OutputBuf_1 {
uint result[]; uint result[];
} tint_symbol; } tint_symbol;
layout(binding = 3) uniform Uniforms_1 { layout(binding = 3) uniform Uniforms_1 {

View File

@ -7,13 +7,13 @@ struct Uniforms {
uvec2 outShape; uvec2 outShape;
}; };
layout(binding = 0) buffer Matrix_1 { layout(binding = 0, std430) buffer Matrix_1 {
uint numbers[]; uint numbers[];
} firstMatrix; } firstMatrix;
layout(binding = 1) buffer Matrix_2 { layout(binding = 1, std430) buffer Matrix_2 {
uint numbers[]; uint numbers[];
} secondMatrix; } secondMatrix;
layout(binding = 2) buffer Matrix_3 { layout(binding = 2, std430) buffer Matrix_3 {
uint numbers[]; uint numbers[];
} resultMatrix; } resultMatrix;
layout(binding = 3) uniform Uniforms_1 { layout(binding = 3) uniform Uniforms_1 {

View File

@ -5,7 +5,7 @@ struct Constants {
int level; int level;
}; };
layout(binding = 3) buffer Result_1 { layout(binding = 3, std430) buffer Result_1 {
float values[]; float values[];
} result; } result;
uniform highp sampler2DArray myTexture_1; uniform highp sampler2DArray myTexture_1;

View File

@ -2,7 +2,7 @@
precision mediump float; precision mediump float;
const uint width = 128u; const uint width = 128u;
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
float values[]; float values[];
} result; } result;
uniform highp sampler2D tex_1; uniform highp sampler2D tex_1;

View File

@ -12,7 +12,7 @@ struct x_B4_BuildInformation {
sspp962805860buildInformationS passthru; sspp962805860buildInformationS passthru;
}; };
layout(binding = 2) buffer x_B4_BuildInformation_1 { layout(binding = 2, std430) buffer x_B4_BuildInformation_1 {
sspp962805860buildInformationS passthru; sspp962805860buildInformationS passthru;
} sspp962805860buildInformation; } sspp962805860buildInformation;
void main_1() { void main_1() {

View File

@ -9,7 +9,7 @@ struct Uniforms {
uvec2 copySize; uvec2 copySize;
}; };
layout(binding = 2) buffer OutputBuf_1 { layout(binding = 2, std430) buffer OutputBuf_1 {
uint result[]; uint result[];
} tint_symbol; } tint_symbol;
layout(binding = 3) uniform Uniforms_1 { layout(binding = 3) uniform Uniforms_1 {

View File

@ -7,13 +7,13 @@ struct Uniforms {
uint dimBOuter; uint dimBOuter;
}; };
layout(binding = 0) buffer Matrix_1 { layout(binding = 0, std430) buffer Matrix_1 {
float numbers[]; float numbers[];
} firstMatrix; } firstMatrix;
layout(binding = 1) buffer Matrix_2 { layout(binding = 1, std430) buffer Matrix_2 {
float numbers[]; float numbers[];
} secondMatrix; } secondMatrix;
layout(binding = 2) buffer Matrix_3 { layout(binding = 2, std430) buffer Matrix_3 {
float numbers[]; float numbers[];
} resultMatrix; } resultMatrix;
layout(binding = 3) uniform Uniforms_1 { layout(binding = 3) uniform Uniforms_1 {

View File

@ -5,7 +5,7 @@ struct DrawIndirectArgs {
uint vertexCount; uint vertexCount;
}; };
layout(binding = 5) buffer DrawIndirectArgs_1 { layout(binding = 5, std430) buffer DrawIndirectArgs_1 {
uint vertexCount; uint vertexCount;
} drawOut; } drawOut;
uint cubeVerts = 0u; uint cubeVerts = 0u;

View File

@ -34,18 +34,18 @@ layout(binding = 3) uniform Uniforms_1 {
int dimInner_1 = 0; int dimInner_1 = 0;
int dimBOuter_1 = 0; int dimBOuter_1 = 0;
layout(binding = 0) buffer ssbOut_1 { layout(binding = 0, std430) buffer ssbOut_1 {
float result[]; float result[];
} x_54; } x_54;
uvec3 tint_symbol = uvec3(0u, 0u, 0u); uvec3 tint_symbol = uvec3(0u, 0u, 0u);
uvec3 tint_symbol_1 = uvec3(0u, 0u, 0u); uvec3 tint_symbol_1 = uvec3(0u, 0u, 0u);
shared float mm_Asub[64][64]; shared float mm_Asub[64][64];
shared float mm_Bsub[64][1]; shared float mm_Bsub[64][1];
layout(binding = 1) buffer ssbA_1 { layout(binding = 1, std430) buffer ssbA_1 {
float A[]; float A[];
} x_165; } x_165;
int batch = 0; int batch = 0;
layout(binding = 2) buffer ssbB_1 { layout(binding = 2, std430) buffer ssbB_1 {
float B[]; float B[];
} x_185; } x_185;
bool coordsInBounds_vi2_vi2_(inout ivec2 coord, inout ivec2 shape) { bool coordsInBounds_vi2_vi2_(inout ivec2 coord, inout ivec2 shape) {

View File

@ -19,10 +19,10 @@ struct Uniforms {
int size; int size;
}; };
layout(binding = 0) buffer ssbOut_1 { layout(binding = 0, std430) buffer ssbOut_1 {
float result[]; float result[];
} x_16; } x_16;
layout(binding = 1) buffer ssbA_1 { layout(binding = 1, std430) buffer ssbA_1 {
float A[]; float A[];
} x_20; } x_20;
uvec3 tint_symbol = uvec3(0u, 0u, 0u); uvec3 tint_symbol = uvec3(0u, 0u, 0u);

View File

@ -5,28 +5,28 @@ struct S {
float a; float a;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
float a; float a;
} b0; } b0;
layout(binding = 0) buffer S_2 { layout(binding = 0, std430) buffer S_2 {
float a; float a;
} b1; } b1;
layout(binding = 0) buffer S_3 { layout(binding = 0, std430) buffer S_3 {
float a; float a;
} b2; } b2;
layout(binding = 0) buffer S_4 { layout(binding = 0, std430) buffer S_4 {
float a; float a;
} b3; } b3;
layout(binding = 0) buffer S_5 { layout(binding = 0, std430) buffer S_5 {
float a; float a;
} b4; } b4;
layout(binding = 0) buffer S_6 { layout(binding = 0, std430) buffer S_6 {
float a; float a;
} b5; } b5;
layout(binding = 0) buffer S_7 { layout(binding = 0, std430) buffer S_7 {
float a; float a;
} b6; } b6;
layout(binding = 0) buffer S_8 { layout(binding = 0, std430) buffer S_8 {
float a; float a;
} b7; } b7;
layout(binding = 1) uniform S_9 { layout(binding = 1) uniform S_9 {

View File

@ -22,7 +22,7 @@ struct Uniforms {
}; };
uvec3 tint_symbol = uvec3(0u, 0u, 0u); uvec3 tint_symbol = uvec3(0u, 0u, 0u);
layout(binding = 2) buffer ResultMatrix_1 { layout(binding = 2, std430) buffer ResultMatrix_1 {
float numbers[]; float numbers[];
} resultMatrix; } resultMatrix;
float binaryOperation_f1_f1_(inout float a, inout float b) { float binaryOperation_f1_f1_(inout float a, inout float b) {

View File

@ -12,7 +12,7 @@ struct S {
uint i; uint i;
}; };
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
vec3 v; vec3 v;
uint i; uint i;
} io; } io;

View File

@ -13,14 +13,14 @@ struct Result {
uint value; uint value;
}; };
layout(binding = 1) buffer Result_1 { layout(binding = 1, std430) buffer Result_1 {
uint value; uint value;
} result; } result;
struct TestData { struct TestData {
int data[3]; int data[3];
}; };
layout(binding = 0) buffer TestData_1 { layout(binding = 0, std430) buffer TestData_1 {
int data[3]; int data[3];
} s; } s;
int runTest() { int runTest() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a[]; int a[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer G_block_1 { layout(binding = 0, std430) buffer G_block_1 {
int inner[]; int inner[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a[]; int a[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a[]; int a[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer G_block_1 { layout(binding = 0, std430) buffer G_block_1 {
int inner[]; int inner[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a[]; int a[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer S_1 { layout(binding = 0, std430) buffer S_1 {
int a[]; int a[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer G_block_1 { layout(binding = 0, std430) buffer G_block_1 {
int inner[]; int inner[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer G_block_1 { layout(binding = 0, std430) buffer G_block_1 {
int inner[]; int inner[];
} G; } G;
void tint_symbol() { void tint_symbol() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
int arg_0[]; int arg_0[];
} sb_ro; } sb_ro;
void arrayLength_1588cd() { void arrayLength_1588cd() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
int arg_0[]; int arg_0[];
} sb_ro; } sb_ro;
void arrayLength_1588cd() { void arrayLength_1588cd() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
int arg_0[]; int arg_0[];
} sb_ro; } sb_ro;
void arrayLength_1588cd() { void arrayLength_1588cd() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0[]; int arg_0[];
} sb_rw; } sb_rw;
void arrayLength_61b1c7() { void arrayLength_61b1c7() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0[]; int arg_0[];
} sb_rw; } sb_rw;
void arrayLength_61b1c7() { void arrayLength_61b1c7() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0[]; int arg_0[];
} sb_rw; } sb_rw;
void arrayLength_61b1c7() { void arrayLength_61b1c7() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
float arg_0[]; float arg_0[];
} sb_ro; } sb_ro;
void arrayLength_a0f5ca() { void arrayLength_a0f5ca() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
float arg_0[]; float arg_0[];
} sb_ro; } sb_ro;
void arrayLength_a0f5ca() { void arrayLength_a0f5ca() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
float arg_0[]; float arg_0[];
} sb_ro; } sb_ro;
void arrayLength_a0f5ca() { void arrayLength_a0f5ca() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
float arg_0[]; float arg_0[];
} sb_rw; } sb_rw;
void arrayLength_cdd123() { void arrayLength_cdd123() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
float arg_0[]; float arg_0[];
} sb_rw; } sb_rw;
void arrayLength_cdd123() { void arrayLength_cdd123() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
float arg_0[]; float arg_0[];
} sb_rw; } sb_rw;
void arrayLength_cdd123() { void arrayLength_cdd123() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
uint arg_0[]; uint arg_0[];
} sb_ro; } sb_ro;
void arrayLength_cfca0a() { void arrayLength_cfca0a() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
uint arg_0[]; uint arg_0[];
} sb_ro; } sb_ro;
void arrayLength_cfca0a() { void arrayLength_cfca0a() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 1) buffer SB_RO_1 { layout(binding = 1, std430) buffer SB_RO_1 {
uint arg_0[]; uint arg_0[];
} sb_ro; } sb_ro;
void arrayLength_cfca0a() { void arrayLength_cfca0a() {

View File

@ -3,7 +3,7 @@ SKIP: FAILED
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0[]; uint arg_0[];
} sb_rw; } sb_rw;
void arrayLength_eb510f() { void arrayLength_eb510f() {
@ -35,7 +35,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0[]; uint arg_0[];
} sb_rw; } sb_rw;
void arrayLength_eb510f() { void arrayLength_eb510f() {
@ -63,7 +63,7 @@ ERROR: 2 compilation errors. No code generated.
#version 310 es #version 310 es
precision mediump float; precision mediump float;
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0[]; uint arg_0[];
} sb_rw; } sb_rw;
void arrayLength_eb510f() { void arrayLength_eb510f() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicAdd_8a199a() { void atomicAdd_8a199a() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicAdd_8a199a() { void atomicAdd_8a199a() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicAdd_d32fe4() { void atomicAdd_d32fe4() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicAdd_d32fe4() { void atomicAdd_d32fe4() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicAnd_152966() { void atomicAnd_152966() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicAnd_152966() { void atomicAnd_152966() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicAnd_85a8d9() { void atomicAnd_85a8d9() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicAnd_85a8d9() { void atomicAnd_85a8d9() {

View File

@ -13,7 +13,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicCompareExchangeWeak_12871c() { void atomicCompareExchangeWeak_12871c() {
@ -43,7 +43,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicCompareExchangeWeak_12871c() { void atomicCompareExchangeWeak_12871c() {

View File

@ -13,7 +13,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicCompareExchangeWeak_6673da() { void atomicCompareExchangeWeak_6673da() {
@ -43,7 +43,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicCompareExchangeWeak_6673da() { void atomicCompareExchangeWeak_6673da() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicExchange_d59712() { void atomicExchange_d59712() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicExchange_d59712() { void atomicExchange_d59712() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicExchange_f2e22f() { void atomicExchange_f2e22f() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicExchange_f2e22f() { void atomicExchange_f2e22f() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicLoad_0806ad() { void atomicLoad_0806ad() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicLoad_0806ad() { void atomicLoad_0806ad() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicLoad_fe6cc3() { void atomicLoad_fe6cc3() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicLoad_fe6cc3() { void atomicLoad_fe6cc3() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicMax_51b9be() { void atomicMax_51b9be() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicMax_51b9be() { void atomicMax_51b9be() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicMax_92aa72() { void atomicMax_92aa72() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicMax_92aa72() { void atomicMax_92aa72() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicMin_8e38dc() { void atomicMin_8e38dc() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicMin_8e38dc() { void atomicMin_8e38dc() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicMin_c67a74() { void atomicMin_c67a74() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicMin_c67a74() { void atomicMin_c67a74() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicOr_5e95d4() { void atomicOr_5e95d4() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicOr_5e95d4() { void atomicOr_5e95d4() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicOr_8d96a0() { void atomicOr_8d96a0() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicOr_8d96a0() { void atomicOr_8d96a0() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicStore_cdc29e() { void atomicStore_cdc29e() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicStore_cdc29e() { void atomicStore_cdc29e() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicStore_d1e9a6() { void atomicStore_d1e9a6() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicStore_d1e9a6() { void atomicStore_d1e9a6() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicSub_051100() { void atomicSub_051100() {
@ -27,7 +27,7 @@ struct SB_RW {
int arg_0; int arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
int arg_0; int arg_0;
} sb_rw; } sb_rw;
void atomicSub_051100() { void atomicSub_051100() {

View File

@ -5,7 +5,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicSub_15bfc9() { void atomicSub_15bfc9() {
@ -27,7 +27,7 @@ struct SB_RW {
uint arg_0; uint arg_0;
}; };
layout(binding = 0) buffer SB_RW_1 { layout(binding = 0, std430) buffer SB_RW_1 {
uint arg_0; uint arg_0;
} sb_rw; } sb_rw;
void atomicSub_15bfc9() { void atomicSub_15bfc9() {

Some files were not shown because too many files have changed in this diff Show More