GLSL: don't emit structs w/runtime-sized arrays.
In GLSL, runtime-sized arrays are only valid in interface blocks, not in structs. The existing code was attempting to avoid emitting structs containing runtime-sized arrays but was confused by type aliases in the AST resulting in arrays being missed. The fix is to do the work on the semantic types instead, where type aliases have been resolved. Bug: tint:1339 Change-Id: I8c305ee9bddd75f975dd13f1d19d623d71410693 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/82360 Kokoro: Kokoro <noreply+kokoro@google.com> Reviewed-by: Ben Clayton <bclayton@google.com> Commit-Queue: Stephen White <senorblanco@chromium.org>
This commit is contained in:
parent
93f686617e
commit
66abf3ed14
|
@ -164,11 +164,13 @@ bool GeneratorImpl::Generate() {
|
|||
// elsewhere.
|
||||
// TODO(crbug.com/tint/1339): We could also avoid emitting any other
|
||||
// struct that is only used as a buffer store type.
|
||||
TINT_ASSERT(Writer, str->members.size() > 0);
|
||||
auto* last_member = str->members[str->members.size() - 1];
|
||||
auto* arr = last_member->type->As<ast::Array>();
|
||||
if (!arr || !arr->IsRuntimeArray()) {
|
||||
if (!EmitStructType(current_buffer_, builder_.Sem().Get(str))) {
|
||||
const sem::Struct* sem_str = builder_.Sem().Get(str);
|
||||
const auto& members = sem_str->Members();
|
||||
TINT_ASSERT(Writer, members.size() > 0);
|
||||
auto* last_member = members[members.size() - 1];
|
||||
auto* arr = last_member->Type()->As<sem::Array>();
|
||||
if (!arr || !arr->IsRuntimeSized()) {
|
||||
if (!EmitStructType(current_buffer_, sem_str)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct Uniforms {
|
||||
|
@ -10,18 +8,6 @@ struct Uniforms {
|
|||
ivec2 outShapeStrides;
|
||||
};
|
||||
|
||||
struct ssbOut {
|
||||
float result[];
|
||||
};
|
||||
|
||||
struct ssbA {
|
||||
float A[];
|
||||
};
|
||||
|
||||
struct ssbB {
|
||||
float B[];
|
||||
};
|
||||
|
||||
int dimAOuter_1 = 0;
|
||||
layout(binding = 3) uniform Uniforms_1 {
|
||||
float NAN;
|
||||
|
@ -397,10 +383,3 @@ void main() {
|
|||
tint_symbol_2(gl_LocalInvocationID, gl_GlobalInvocationID, gl_LocalInvocationIndex);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:12: '' : array size required
|
||||
ERROR: 0:13: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct ssbOut {
|
||||
float result[];
|
||||
};
|
||||
|
||||
struct ssbA {
|
||||
float A[];
|
||||
};
|
||||
|
||||
struct Uniforms {
|
||||
float NAN;
|
||||
int aShape;
|
||||
|
@ -87,10 +77,3 @@ void main() {
|
|||
tint_symbol_1(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,19 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct ResultMatrix {
|
||||
float numbers[];
|
||||
};
|
||||
|
||||
struct FirstMatrix {
|
||||
float numbers[];
|
||||
};
|
||||
|
||||
struct SecondMatrix {
|
||||
float numbers[];
|
||||
};
|
||||
|
||||
struct Uniforms {
|
||||
float NAN;
|
||||
int sizeA;
|
||||
|
@ -70,10 +56,3 @@ void main() {
|
|||
tint_symbol_1(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2569 internal compiler error: Multiplanar external texture transform was not run.
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2571 internal compiler error: Multiplanar external texture transform was not run.
|
||||
|
||||
|
||||
********************************************************************
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2569 internal compiler error: Multiplanar external texture transform was not run.
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2571 internal compiler error: Multiplanar external texture transform was not run.
|
||||
|
||||
|
||||
********************************************************************
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2569 internal compiler error: Multiplanar external texture transform was not run.
|
||||
../../src/tint/writer/glsl/generator_impl.cc:2571 internal compiler error: Multiplanar external texture transform was not run.
|
||||
|
||||
|
||||
********************************************************************
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint first;
|
||||
uint rtarr[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint first;
|
||||
uint rtarr[];
|
||||
|
@ -25,10 +18,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint first;
|
||||
uint rtarr[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint first;
|
||||
uint rtarr[];
|
||||
|
@ -25,10 +18,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
float field0;
|
||||
float age[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
float field0;
|
||||
float age[];
|
||||
|
@ -25,10 +18,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
|
@ -25,10 +18,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
|
@ -26,10 +19,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
|
@ -26,10 +19,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,13 +1,6 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
struct S {
|
||||
uint field0;
|
||||
uint field1[];
|
||||
};
|
||||
|
||||
void main_1() {
|
||||
return;
|
||||
}
|
||||
|
@ -20,10 +13,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:6: '' : array size required
|
||||
ERROR: 0:7: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,12 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct doesNotMatter {
|
||||
int global_seed;
|
||||
int data[];
|
||||
};
|
||||
|
||||
struct buf1 {
|
||||
vec2 injectionSwitch;
|
||||
};
|
||||
|
@ -58,10 +51,3 @@ void main() {
|
|||
tint_symbol_1(gl_LocalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:5: '' : array size required
|
||||
ERROR: 0:6: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,16 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/graphicsfuzz/barrier-in-loop-with-break/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<i32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct doesNotMatter {
|
||||
int global_seed;
|
||||
int data[];
|
||||
};
|
||||
|
||||
struct buf1 {
|
||||
vec2 injectionSwitch;
|
||||
};
|
||||
|
@ -62,10 +55,3 @@ void main() {
|
|||
tint_symbol_1(gl_LocalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:5: '' : array size required
|
||||
ERROR: 0:6: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct buf0 {
|
||||
vec2 injectionSwitch;
|
||||
};
|
||||
|
||||
struct doesNotMatter {
|
||||
uint x_compute_data[];
|
||||
};
|
||||
|
||||
vec4 GLF_live2gl_FragCoord = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
layout(binding = 1) uniform buf0_1 {
|
||||
vec2 injectionSwitch;
|
||||
|
@ -77,10 +71,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:8: '' : array size required
|
||||
ERROR: 0:9: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/graphicsfuzz/two-for-loops-with-barrier-function/0-opt.wgsl:5:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
@ -10,10 +8,6 @@ struct buf0 {
|
|||
vec2 injectionSwitch;
|
||||
};
|
||||
|
||||
struct doesNotMatter {
|
||||
uint x_compute_data[];
|
||||
};
|
||||
|
||||
vec4 GLF_live2gl_FragCoord = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
layout(binding = 1) uniform buf0_1 {
|
||||
vec2 injectionSwitch;
|
||||
|
@ -81,10 +75,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:8: '' : array size required
|
||||
ERROR: 0:9: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct doesNotMatter {
|
||||
float x_compute_data[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer doesNotMatter_1 {
|
||||
float x_compute_data[];
|
||||
} x_9;
|
||||
|
@ -66,10 +60,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/graphicsfuzz/two-nested-for-loops-with-returns/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<f32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct doesNotMatter {
|
||||
float x_compute_data[];
|
||||
};
|
||||
|
||||
layout(binding = 0, std430) buffer doesNotMatter_1 {
|
||||
float x_compute_data[];
|
||||
} x_9;
|
||||
|
@ -70,10 +64,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct buf1 {
|
||||
|
@ -10,10 +8,6 @@ struct buf2 {
|
|||
vec2 resolution;
|
||||
};
|
||||
|
||||
struct doesNotMatter {
|
||||
int x_compute_data[];
|
||||
};
|
||||
|
||||
uvec3 tint_symbol = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 1) uniform buf1_1 {
|
||||
vec2 injectionSwitch;
|
||||
|
@ -123,10 +117,3 @@ void main() {
|
|||
tint_symbol_1(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:12: '' : array size required
|
||||
ERROR: 0:13: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/graphicsfuzz/unreachable-barrier-in-loops/0-opt.wgsl:9:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<i32>;
|
||||
^^^^^^
|
||||
|
@ -14,10 +12,6 @@ struct buf2 {
|
|||
vec2 resolution;
|
||||
};
|
||||
|
||||
struct doesNotMatter {
|
||||
int x_compute_data[];
|
||||
};
|
||||
|
||||
uvec3 tint_symbol = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 1) uniform buf1_1 {
|
||||
vec2 injectionSwitch;
|
||||
|
@ -127,10 +121,3 @@ void main() {
|
|||
tint_symbol_1(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:12: '' : array size required
|
||||
ERROR: 0:13: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct Buf1 {
|
||||
int result;
|
||||
};
|
||||
|
||||
struct Buf0 {
|
||||
uint values[];
|
||||
};
|
||||
|
||||
layout(binding = 1, std430) buffer Buf1_1 {
|
||||
int result;
|
||||
} x_4;
|
||||
|
@ -40,10 +34,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:8: '' : array size required
|
||||
ERROR: 0:9: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/arraylength/array-stride-larger-than-element-size/1.wgsl:5:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
@ -10,10 +8,6 @@ struct Buf1 {
|
|||
int result;
|
||||
};
|
||||
|
||||
struct Buf0 {
|
||||
uint values[];
|
||||
};
|
||||
|
||||
layout(binding = 1, std430) buffer Buf1_1 {
|
||||
int result;
|
||||
} x_4;
|
||||
|
@ -44,10 +38,3 @@ void main() {
|
|||
tint_symbol();
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:8: '' : array size required
|
||||
ERROR: 0:9: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthan/0.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_sgreaterthanequal/0.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthan/0.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_int_compare/uint_slessthanequal/0.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
int field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_int_uclamp/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<i32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
int field0[];
|
||||
|
@ -42,10 +36,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -30,10 +24,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sabs/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_sclamp/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -42,10 +36,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smax/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/glsl_uint_smin/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_3 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_sdiv/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -38,10 +32,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,5 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -30,10 +24,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,15 +1,9 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/compute/signed_op/uint_snegate/0-opt.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<u32>;
|
||||
^^^^^^
|
||||
|
||||
#version 310 es
|
||||
|
||||
struct S {
|
||||
uint field0[];
|
||||
};
|
||||
|
||||
uvec3 x_2 = uvec3(0u, 0u, 0u);
|
||||
layout(binding = 0, std430) buffer S_1 {
|
||||
uint field0[];
|
||||
|
@ -34,10 +28,3 @@ void main() {
|
|||
tint_symbol(gl_GlobalInvocationID);
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:4: '' : array size required
|
||||
ERROR: 0:5: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,14 +1,8 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
layout(location = 0) flat in int x_3_param_1;
|
||||
layout(location = 0) out int x_4_1_1;
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
vec4 x_2 = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
int x_3 = 0;
|
||||
int x_4 = 0;
|
||||
|
@ -43,10 +37,3 @@ void main() {
|
|||
x_4_1_1 = inner_result.x_4_1;
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:7: '' : array size required
|
||||
ERROR: 0:8: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/terminate_invocation/no_ssbo_store/1.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<i32>;
|
||||
^^^^^^
|
||||
|
@ -9,10 +7,6 @@ precision mediump float;
|
|||
|
||||
layout(location = 0) flat in int x_3_param_1;
|
||||
layout(location = 0) out int x_4_1_1;
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
vec4 x_2 = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
int x_3 = 0;
|
||||
int x_4 = 0;
|
||||
|
@ -47,10 +41,3 @@ void main() {
|
|||
x_4_1_1 = inner_result.x_4_1;
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:7: '' : array size required
|
||||
ERROR: 0:8: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,14 +1,8 @@
|
|||
SKIP: FAILED
|
||||
|
||||
#version 310 es
|
||||
precision mediump float;
|
||||
|
||||
layout(location = 0) flat in int x_3_param_1;
|
||||
layout(location = 0) out int x_4_1_1;
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
vec4 x_2 = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
int x_3 = 0;
|
||||
int x_4 = 0;
|
||||
|
@ -44,10 +38,3 @@ void main() {
|
|||
x_4_1_1 = inner_result.x_4_1;
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:7: '' : array size required
|
||||
ERROR: 0:8: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
SKIP: FAILED
|
||||
|
||||
vk-gl-cts/spirv_assembly/instruction/terminate_invocation/ssbo_store_before_terminate/1.wgsl:1:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
|
||||
type RTArr = @stride(4) array<i32>;
|
||||
^^^^^^
|
||||
|
@ -9,10 +7,6 @@ precision mediump float;
|
|||
|
||||
layout(location = 0) flat in int x_3_param_1;
|
||||
layout(location = 0) out int x_4_1_1;
|
||||
struct S {
|
||||
int field0[];
|
||||
};
|
||||
|
||||
vec4 x_2 = vec4(0.0f, 0.0f, 0.0f, 0.0f);
|
||||
int x_3 = 0;
|
||||
int x_4 = 0;
|
||||
|
@ -48,10 +42,3 @@ void main() {
|
|||
x_4_1_1 = inner_result.x_4_1;
|
||||
return;
|
||||
}
|
||||
Error parsing GLSL shader:
|
||||
ERROR: 0:7: '' : array size required
|
||||
ERROR: 0:8: '' : compilation terminated
|
||||
ERROR: 2 compilation errors. No code generated.
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue