GLSL: fix Select op with a bool vector condition.
The fix is in the mix().
Bug: tint:1429
Change-Id: Id128ead6b124cd364f45a860ad991977be94be5b
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/80660
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Commit-Queue: Stephen White <senorblanco@chromium.org>
diff --git a/src/writer/glsl/generator_impl.cc b/src/writer/glsl/generator_impl.cc
index 022ade2..fb4d0ed 100644
--- a/src/writer/glsl/generator_impl.cc
+++ b/src/writer/glsl/generator_impl.cc
@@ -818,6 +818,24 @@
auto* expr_false = expr->args[0];
auto* expr_true = expr->args[1];
auto* expr_cond = expr->args[2];
+ // GLSL does not support ternary expressions with a bool vector conditional,
+ // but it does support mix() with same.
+ if (TypeOf(expr_cond)->UnwrapRef()->is_bool_vector()) {
+ out << "mix(";
+ if (!EmitExpression(out, expr_false)) {
+ return false;
+ }
+ out << ", ";
+ if (!EmitExpression(out, expr_true)) {
+ return false;
+ }
+ out << ", ";
+ if (!EmitExpression(out, expr_cond)) {
+ return false;
+ }
+ out << ")";
+ return true;
+ }
ScopedParen paren(out);
if (!EmitExpression(out, expr_cond)) {
return false;
diff --git a/src/writer/glsl/generator_impl_builtin_test.cc b/src/writer/glsl/generator_impl_builtin_test.cc
index 8650eb0..eecff52 100644
--- a/src/writer/glsl/generator_impl_builtin_test.cc
+++ b/src/writer/glsl/generator_impl_builtin_test.cc
@@ -287,7 +287,7 @@
gen.increment_indent();
std::stringstream out;
ASSERT_TRUE(gen.EmitExpression(out, call)) << gen.error();
- EXPECT_EQ(out.str(), "(bvec2(true, false) ? ivec2(3, 4) : ivec2(1, 2))");
+ EXPECT_EQ(out.str(), "mix(ivec2(1, 2), ivec2(3, 4), bvec2(true, false))");
}
TEST_F(GlslGeneratorImplTest_Builtin, Modf_Scalar) {
diff --git a/test/builtins/gen/select/00b848.wgsl.expected.glsl b/test/builtins/gen/select/00b848.wgsl.expected.glsl
index 5e70f86..d6028c2 100644
--- a/test/builtins/gen/select/00b848.wgsl.expected.glsl
+++ b/test/builtins/gen/select/00b848.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_00b848() {
- ivec2 res = (bvec2(false, false) ? ivec2(0, 0) : ivec2(0, 0));
+ ivec2 res = mix(ivec2(0, 0), ivec2(0, 0), bvec2(false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_00b848() {
- ivec2 res = (bvec2(false, false) ? ivec2(0, 0) : ivec2(0, 0));
+ ivec2 res = mix(ivec2(0, 0), ivec2(0, 0), bvec2(false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_00b848() {
- ivec2 res = (bvec2(false, false) ? ivec2(0, 0) : ivec2(0, 0));
+ ivec2 res = mix(ivec2(0, 0), ivec2(0, 0), bvec2(false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/01e2cd.wgsl.expected.glsl b/test/builtins/gen/select/01e2cd.wgsl.expected.glsl
index 3fcc3c7..8003af7 100644
--- a/test/builtins/gen/select/01e2cd.wgsl.expected.glsl
+++ b/test/builtins/gen/select/01e2cd.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_01e2cd() {
- ivec3 res = (bvec3(false, false, false) ? ivec3(0, 0, 0) : ivec3(0, 0, 0));
+ ivec3 res = mix(ivec3(0, 0, 0), ivec3(0, 0, 0), bvec3(false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_01e2cd() {
- ivec3 res = (bvec3(false, false, false) ? ivec3(0, 0, 0) : ivec3(0, 0, 0));
+ ivec3 res = mix(ivec3(0, 0, 0), ivec3(0, 0, 0), bvec3(false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_01e2cd() {
- ivec3 res = (bvec3(false, false, false) ? ivec3(0, 0, 0) : ivec3(0, 0, 0));
+ ivec3 res = mix(ivec3(0, 0, 0), ivec3(0, 0, 0), bvec3(false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/1e960b.wgsl.expected.glsl b/test/builtins/gen/select/1e960b.wgsl.expected.glsl
index 3046b79..9485034 100644
--- a/test/builtins/gen/select/1e960b.wgsl.expected.glsl
+++ b/test/builtins/gen/select/1e960b.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_1e960b() {
- uvec2 res = (bvec2(false, false) ? uvec2(0u, 0u) : uvec2(0u, 0u));
+ uvec2 res = mix(uvec2(0u, 0u), uvec2(0u, 0u), bvec2(false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_1e960b() {
- uvec2 res = (bvec2(false, false) ? uvec2(0u, 0u) : uvec2(0u, 0u));
+ uvec2 res = mix(uvec2(0u, 0u), uvec2(0u, 0u), bvec2(false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_1e960b() {
- uvec2 res = (bvec2(false, false) ? uvec2(0u, 0u) : uvec2(0u, 0u));
+ uvec2 res = mix(uvec2(0u, 0u), uvec2(0u, 0u), bvec2(false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/266aff.wgsl.expected.glsl b/test/builtins/gen/select/266aff.wgsl.expected.glsl
index 92a2d9a..9095b03 100644
--- a/test/builtins/gen/select/266aff.wgsl.expected.glsl
+++ b/test/builtins/gen/select/266aff.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_266aff() {
- vec2 res = (bvec2(false, false) ? vec2(0.0f, 0.0f) : vec2(0.0f, 0.0f));
+ vec2 res = mix(vec2(0.0f, 0.0f), vec2(0.0f, 0.0f), bvec2(false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_266aff() {
- vec2 res = (bvec2(false, false) ? vec2(0.0f, 0.0f) : vec2(0.0f, 0.0f));
+ vec2 res = mix(vec2(0.0f, 0.0f), vec2(0.0f, 0.0f), bvec2(false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_266aff() {
- vec2 res = (bvec2(false, false) ? vec2(0.0f, 0.0f) : vec2(0.0f, 0.0f));
+ vec2 res = mix(vec2(0.0f, 0.0f), vec2(0.0f, 0.0f), bvec2(false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/28a27e.wgsl.expected.glsl b/test/builtins/gen/select/28a27e.wgsl.expected.glsl
index d9c1e4a..2103574 100644
--- a/test/builtins/gen/select/28a27e.wgsl.expected.glsl
+++ b/test/builtins/gen/select/28a27e.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_28a27e() {
- uvec3 res = (bvec3(false, false, false) ? uvec3(0u, 0u, 0u) : uvec3(0u, 0u, 0u));
+ uvec3 res = mix(uvec3(0u, 0u, 0u), uvec3(0u, 0u, 0u), bvec3(false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_28a27e() {
- uvec3 res = (bvec3(false, false, false) ? uvec3(0u, 0u, 0u) : uvec3(0u, 0u, 0u));
+ uvec3 res = mix(uvec3(0u, 0u, 0u), uvec3(0u, 0u, 0u), bvec3(false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_28a27e() {
- uvec3 res = (bvec3(false, false, false) ? uvec3(0u, 0u, 0u) : uvec3(0u, 0u, 0u));
+ uvec3 res = mix(uvec3(0u, 0u, 0u), uvec3(0u, 0u, 0u), bvec3(false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/80a9a9.wgsl.expected.glsl b/test/builtins/gen/select/80a9a9.wgsl.expected.glsl
index 448ce6c..2b0a383 100644
--- a/test/builtins/gen/select/80a9a9.wgsl.expected.glsl
+++ b/test/builtins/gen/select/80a9a9.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_80a9a9() {
- bvec3 res = (bvec3(false, false, false) ? bvec3(false, false, false) : bvec3(false, false, false));
+ bvec3 res = mix(bvec3(false, false, false), bvec3(false, false, false), bvec3(false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_80a9a9() {
- bvec3 res = (bvec3(false, false, false) ? bvec3(false, false, false) : bvec3(false, false, false));
+ bvec3 res = mix(bvec3(false, false, false), bvec3(false, false, false), bvec3(false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_80a9a9() {
- bvec3 res = (bvec3(false, false, false) ? bvec3(false, false, false) : bvec3(false, false, false));
+ bvec3 res = mix(bvec3(false, false, false), bvec3(false, false, false), bvec3(false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/a2860e.wgsl.expected.glsl b/test/builtins/gen/select/a2860e.wgsl.expected.glsl
index 82f1419..17f0fc0 100644
--- a/test/builtins/gen/select/a2860e.wgsl.expected.glsl
+++ b/test/builtins/gen/select/a2860e.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_a2860e() {
- ivec4 res = (bvec4(false, false, false, false) ? ivec4(0, 0, 0, 0) : ivec4(0, 0, 0, 0));
+ ivec4 res = mix(ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), bvec4(false, false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_a2860e() {
- ivec4 res = (bvec4(false, false, false, false) ? ivec4(0, 0, 0, 0) : ivec4(0, 0, 0, 0));
+ ivec4 res = mix(ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), bvec4(false, false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_a2860e() {
- ivec4 res = (bvec4(false, false, false, false) ? ivec4(0, 0, 0, 0) : ivec4(0, 0, 0, 0));
+ ivec4 res = mix(ivec4(0, 0, 0, 0), ivec4(0, 0, 0, 0), bvec4(false, false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/bb8aae.wgsl.expected.glsl b/test/builtins/gen/select/bb8aae.wgsl.expected.glsl
index 45e3979..3fd39a1 100644
--- a/test/builtins/gen/select/bb8aae.wgsl.expected.glsl
+++ b/test/builtins/gen/select/bb8aae.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_bb8aae() {
- vec4 res = (bvec4(false, false, false, false) ? vec4(0.0f, 0.0f, 0.0f, 0.0f) : vec4(0.0f, 0.0f, 0.0f, 0.0f));
+ vec4 res = mix(vec4(0.0f, 0.0f, 0.0f, 0.0f), vec4(0.0f, 0.0f, 0.0f, 0.0f), bvec4(false, false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_bb8aae() {
- vec4 res = (bvec4(false, false, false, false) ? vec4(0.0f, 0.0f, 0.0f, 0.0f) : vec4(0.0f, 0.0f, 0.0f, 0.0f));
+ vec4 res = mix(vec4(0.0f, 0.0f, 0.0f, 0.0f), vec4(0.0f, 0.0f, 0.0f, 0.0f), bvec4(false, false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_bb8aae() {
- vec4 res = (bvec4(false, false, false, false) ? vec4(0.0f, 0.0f, 0.0f, 0.0f) : vec4(0.0f, 0.0f, 0.0f, 0.0f));
+ vec4 res = mix(vec4(0.0f, 0.0f, 0.0f, 0.0f), vec4(0.0f, 0.0f, 0.0f, 0.0f), bvec4(false, false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/c4a4ef.wgsl.expected.glsl b/test/builtins/gen/select/c4a4ef.wgsl.expected.glsl
index 76187f1..8e6f420 100644
--- a/test/builtins/gen/select/c4a4ef.wgsl.expected.glsl
+++ b/test/builtins/gen/select/c4a4ef.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_c4a4ef() {
- uvec4 res = (bvec4(false, false, false, false) ? uvec4(0u, 0u, 0u, 0u) : uvec4(0u, 0u, 0u, 0u));
+ uvec4 res = mix(uvec4(0u, 0u, 0u, 0u), uvec4(0u, 0u, 0u, 0u), bvec4(false, false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_c4a4ef() {
- uvec4 res = (bvec4(false, false, false, false) ? uvec4(0u, 0u, 0u, 0u) : uvec4(0u, 0u, 0u, 0u));
+ uvec4 res = mix(uvec4(0u, 0u, 0u, 0u), uvec4(0u, 0u, 0u, 0u), bvec4(false, false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_c4a4ef() {
- uvec4 res = (bvec4(false, false, false, false) ? uvec4(0u, 0u, 0u, 0u) : uvec4(0u, 0u, 0u, 0u));
+ uvec4 res = mix(uvec4(0u, 0u, 0u, 0u), uvec4(0u, 0u, 0u, 0u), bvec4(false, false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/cb9301.wgsl.expected.glsl b/test/builtins/gen/select/cb9301.wgsl.expected.glsl
index 5792eed..c5c5a71 100644
--- a/test/builtins/gen/select/cb9301.wgsl.expected.glsl
+++ b/test/builtins/gen/select/cb9301.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_cb9301() {
- bvec2 res = (bvec2(false, false) ? bvec2(false, false) : bvec2(false, false));
+ bvec2 res = mix(bvec2(false, false), bvec2(false, false), bvec2(false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_cb9301() {
- bvec2 res = (bvec2(false, false) ? bvec2(false, false) : bvec2(false, false));
+ bvec2 res = mix(bvec2(false, false), bvec2(false, false), bvec2(false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_cb9301() {
- bvec2 res = (bvec2(false, false) ? bvec2(false, false) : bvec2(false, false));
+ bvec2 res = mix(bvec2(false, false), bvec2(false, false), bvec2(false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/e3e028.wgsl.expected.glsl b/test/builtins/gen/select/e3e028.wgsl.expected.glsl
index 372d40f..59f7187 100644
--- a/test/builtins/gen/select/e3e028.wgsl.expected.glsl
+++ b/test/builtins/gen/select/e3e028.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_e3e028() {
- bvec4 res = (bvec4(false, false, false, false) ? bvec4(false, false, false, false) : bvec4(false, false, false, false));
+ bvec4 res = mix(bvec4(false, false, false, false), bvec4(false, false, false, false), bvec4(false, false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_e3e028() {
- bvec4 res = (bvec4(false, false, false, false) ? bvec4(false, false, false, false) : bvec4(false, false, false, false));
+ bvec4 res = mix(bvec4(false, false, false, false), bvec4(false, false, false, false), bvec4(false, false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_e3e028() {
- bvec4 res = (bvec4(false, false, false, false) ? bvec4(false, false, false, false) : bvec4(false, false, false, false));
+ bvec4 res = mix(bvec4(false, false, false, false), bvec4(false, false, false, false), bvec4(false, false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/builtins/gen/select/ebfea2.wgsl.expected.glsl b/test/builtins/gen/select/ebfea2.wgsl.expected.glsl
index e2174eb..5398597 100644
--- a/test/builtins/gen/select/ebfea2.wgsl.expected.glsl
+++ b/test/builtins/gen/select/ebfea2.wgsl.expected.glsl
@@ -1,9 +1,7 @@
-SKIP: FAILED
-
#version 310 es
void select_ebfea2() {
- vec3 res = (bvec3(false, false, false) ? vec3(0.0f, 0.0f, 0.0f) : vec3(0.0f, 0.0f, 0.0f));
+ vec3 res = mix(vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f), bvec3(false, false, false));
}
vec4 vertex_main() {
@@ -18,18 +16,11 @@
gl_Position.z = ((2.0f * gl_Position.z) - gl_Position.w);
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
precision mediump float;
void select_ebfea2() {
- vec3 res = (bvec3(false, false, false) ? vec3(0.0f, 0.0f, 0.0f) : vec3(0.0f, 0.0f, 0.0f));
+ vec3 res = mix(vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f), bvec3(false, false, false));
}
void fragment_main() {
@@ -40,17 +31,10 @@
fragment_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
#version 310 es
void select_ebfea2() {
- vec3 res = (bvec3(false, false, false) ? vec3(0.0f, 0.0f, 0.0f) : vec3(0.0f, 0.0f, 0.0f));
+ vec3 res = mix(vec3(0.0f, 0.0f, 0.0f), vec3(0.0f, 0.0f, 0.0f), bvec3(false, false, false));
}
void compute_main() {
@@ -62,10 +46,3 @@
compute_main();
return;
}
-Error parsing GLSL shader:
-ERROR: 0:4: '' : boolean expression expected
-ERROR: 0:4: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/unittest/reader/spirv/SpvLogicalTest_Select_VecBoolCond_VectorParams.spvasm.expected.glsl b/test/unittest/reader/spirv/SpvLogicalTest_Select_VecBoolCond_VectorParams.spvasm.expected.glsl
deleted file mode 100644
index 19e5f94..0000000
--- a/test/unittest/reader/spirv/SpvLogicalTest_Select_VecBoolCond_VectorParams.spvasm.expected.glsl
+++ /dev/null
@@ -1,25 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-void main_1() {
- uvec2 x_1 = (bvec2(true, false) ? uvec2(10u, 20u) : uvec2(20u, 10u));
- return;
-}
-
-void tint_symbol() {
- main_1();
-}
-
-void main() {
- tint_symbol();
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:5: '' : boolean expression expected
-ERROR: 0:5: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.glsl
deleted file mode 100644
index bffa90b..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.spvasm.expected.glsl
+++ /dev/null
@@ -1,47 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct buf0 {
- vec2 injectionSwitch;
-};
-
-layout(binding = 0) uniform buf0_1 {
- vec2 injectionSwitch;
-} x_5;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- vec2 x_29 = x_5.injectionSwitch;
- if (((bvec2(false, false) ? vec2(1.0f, 1.0f) : x_29).x == 0.0f)) {
- x_GLF_color = vec4(1.0f, 0.0f, 0.0f, 1.0f);
- } else {
- x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:16: '' : boolean expression expected
-ERROR: 0:16: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.glsl
deleted file mode 100644
index bffa90b..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-extract/0-opt.wgsl.expected.glsl
+++ /dev/null
@@ -1,47 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct buf0 {
- vec2 injectionSwitch;
-};
-
-layout(binding = 0) uniform buf0_1 {
- vec2 injectionSwitch;
-} x_5;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- vec2 x_29 = x_5.injectionSwitch;
- if (((bvec2(false, false) ? vec2(1.0f, 1.0f) : x_29).x == 0.0f)) {
- x_GLF_color = vec4(1.0f, 0.0f, 0.0f, 1.0f);
- } else {
- x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:16: '' : boolean expression expected
-ERROR: 0:16: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.glsl
deleted file mode 100644
index a6f3655..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.spvasm.expected.glsl
+++ /dev/null
@@ -1,52 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct buf0 {
- vec2 threeandfour;
-};
-
-layout(binding = 0) uniform buf0_1 {
- vec2 threeandfour;
-} x_6;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- vec4 v = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- v = vec4(2.0f, 3.0f, 4.0f, 5.0f);
- float x_40 = x_6.threeandfour.y;
- vec2 x_42 = (bvec2(true, false) ? vec2(1.0f, x_40) : vec2(2.0f, 6.0f));
- vec4 x_43 = v;
- v = vec4(x_42.x, x_42.y, x_43.z, x_43.w);
- if (all(equal(v, vec4(1.0f, 6.0f, 4.0f, 5.0f)))) {
- x_GLF_color = vec4(1.0f, 0.0f, 0.0f, 1.0f);
- } else {
- x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:18: '' : boolean expression expected
-ERROR: 0:18: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.glsl
deleted file mode 100644
index a6f3655..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-folding-rules-shuffle-mix/0-opt.wgsl.expected.glsl
+++ /dev/null
@@ -1,52 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct buf0 {
- vec2 threeandfour;
-};
-
-layout(binding = 0) uniform buf0_1 {
- vec2 threeandfour;
-} x_6;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- vec4 v = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- v = vec4(2.0f, 3.0f, 4.0f, 5.0f);
- float x_40 = x_6.threeandfour.y;
- vec2 x_42 = (bvec2(true, false) ? vec2(1.0f, x_40) : vec2(2.0f, 6.0f));
- vec4 x_43 = v;
- v = vec4(x_42.x, x_42.y, x_43.z, x_43.w);
- if (all(equal(v, vec4(1.0f, 6.0f, 4.0f, 5.0f)))) {
- x_GLF_color = vec4(1.0f, 0.0f, 0.0f, 1.0f);
- } else {
- x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:18: '' : boolean expression expected
-ERROR: 0:18: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.glsl
deleted file mode 100644
index 4d706b5..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.spvasm.expected.glsl
+++ /dev/null
@@ -1,115 +0,0 @@
-SKIP: FAILED
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct strided_arr {
- int el;
-};
-
-struct buf1 {
- strided_arr x_GLF_uniform_int_values[3];
-};
-
-struct strided_arr_1 {
- float el;
-};
-
-struct buf0 {
- strided_arr_1 x_GLF_uniform_float_values[2];
-};
-
-layout(binding = 1) uniform buf1_1 {
- strided_arr x_GLF_uniform_int_values[3];
-} x_6;
-
-layout(binding = 0) uniform buf0_1 {
- strided_arr_1 x_GLF_uniform_float_values[2];
-} x_10;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- int A[2] = int[2](0, 0);
- int i = 0;
- int a = 0;
- vec2 v1 = vec2(0.0f, 0.0f);
- vec2 v2 = vec2(0.0f, 0.0f);
- int b = 0;
- int x_46 = x_6.x_GLF_uniform_int_values[2].el;
- int x_48 = x_6.x_GLF_uniform_int_values[0].el;
- A[x_46] = x_48;
- int x_51 = x_6.x_GLF_uniform_int_values[0].el;
- int x_53 = x_6.x_GLF_uniform_int_values[1].el;
- A[x_51] = x_53;
- int x_56 = x_6.x_GLF_uniform_int_values[0].el;
- i = x_56;
- while (true) {
- int x_61 = i;
- int x_63 = x_6.x_GLF_uniform_int_values[2].el;
- if ((x_61 > x_63)) {
- } else {
- break;
- }
- i = (i - 1);
- }
- float x_69 = x_10.x_GLF_uniform_float_values[1].el;
- float x_71 = x_10.x_GLF_uniform_float_values[1].el;
- int x_76 = A[((x_69 >= x_71) ? 1 : i)];
- a = x_76;
- int x_78 = x_6.x_GLF_uniform_int_values[0].el;
- int x_80 = a;
- int x_84 = x_6.x_GLF_uniform_int_values[0].el;
- int x_87 = x_6.x_GLF_uniform_int_values[0].el;
- float x_91 = x_10.x_GLF_uniform_float_values[1].el;
- float x_93 = x_10.x_GLF_uniform_float_values[0].el;
- v1 = (bvec2((x_91 < x_93), true) ? vec2(float(x_84), float(x_87)) : vec2(float(x_78), float(x_80)));
- int x_98 = x_6.x_GLF_uniform_int_values[2].el;
- float x_100 = v1[x_98];
- int x_103 = x_6.x_GLF_uniform_int_values[0].el;
- float x_105 = v1[x_103];
- v2 = (bvec2(false, false) ? vec2(x_105, x_105) : vec2(x_100, x_100));
- int x_109 = x_6.x_GLF_uniform_int_values[1].el;
- float x_110 = float(x_109);
- int x_113 = x_6.x_GLF_uniform_int_values[0].el;
- float x_114 = float(x_113);
- int x_121 = A[int(clamp(vec2(x_110, x_110), vec2(x_114, x_114), v2).x)];
- b = x_121;
- int x_122 = b;
- int x_124 = x_6.x_GLF_uniform_int_values[1].el;
- if ((x_122 == x_124)) {
- int x_130 = x_6.x_GLF_uniform_int_values[0].el;
- int x_133 = x_6.x_GLF_uniform_int_values[2].el;
- int x_136 = x_6.x_GLF_uniform_int_values[2].el;
- int x_139 = x_6.x_GLF_uniform_int_values[0].el;
- x_GLF_color = vec4(float(x_130), float(x_133), float(x_136), float(x_139));
- } else {
- int x_143 = x_6.x_GLF_uniform_int_values[2].el;
- float x_144 = float(x_143);
- x_GLF_color = vec4(x_144, x_144, x_144, x_144);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:64: '' : boolean expression expected
-ERROR: 0:64: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-
diff --git a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.glsl b/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.glsl
deleted file mode 100644
index 1e4b69d..0000000
--- a/test/vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl.expected.glsl
+++ /dev/null
@@ -1,123 +0,0 @@
-SKIP: FAILED
-
-vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl:1:13 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
-type Arr = @stride(16) array<i32, 3>;
- ^^^^^^
-
-vk-gl-cts/graphicsfuzz/cov-inst-combine-shifts-mix-mix-clamp/0-opt.wgsl:7:15 warning: use of deprecated language feature: the @stride attribute is deprecated; use a larger type if necessary
-type Arr_1 = @stride(16) array<f32, 2>;
- ^^^^^^
-
-#version 310 es
-precision mediump float;
-
-layout(location = 0) out vec4 x_GLF_color_1_1;
-struct tint_padded_array_element {
- int el;
-};
-
-struct buf1 {
- tint_padded_array_element x_GLF_uniform_int_values[3];
-};
-
-struct tint_padded_array_element_1 {
- float el;
-};
-
-struct buf0 {
- tint_padded_array_element_1 x_GLF_uniform_float_values[2];
-};
-
-layout(binding = 1) uniform buf1_1 {
- tint_padded_array_element x_GLF_uniform_int_values[3];
-} x_6;
-
-layout(binding = 0) uniform buf0_1 {
- tint_padded_array_element_1 x_GLF_uniform_float_values[2];
-} x_10;
-
-vec4 x_GLF_color = vec4(0.0f, 0.0f, 0.0f, 0.0f);
-void main_1() {
- int A[2] = int[2](0, 0);
- int i = 0;
- int a = 0;
- vec2 v1 = vec2(0.0f, 0.0f);
- vec2 v2 = vec2(0.0f, 0.0f);
- int b = 0;
- int x_46 = x_6.x_GLF_uniform_int_values[2].el;
- int x_48 = x_6.x_GLF_uniform_int_values[0].el;
- A[x_46] = x_48;
- int x_51 = x_6.x_GLF_uniform_int_values[0].el;
- int x_53 = x_6.x_GLF_uniform_int_values[1].el;
- A[x_51] = x_53;
- int x_56 = x_6.x_GLF_uniform_int_values[0].el;
- i = x_56;
- while (true) {
- int x_61 = i;
- int x_63 = x_6.x_GLF_uniform_int_values[2].el;
- if ((x_61 > x_63)) {
- } else {
- break;
- }
- i = (i - 1);
- }
- float x_69 = x_10.x_GLF_uniform_float_values[1].el;
- float x_71 = x_10.x_GLF_uniform_float_values[1].el;
- int x_76 = A[((x_69 >= x_71) ? 1 : i)];
- a = x_76;
- int x_78 = x_6.x_GLF_uniform_int_values[0].el;
- int x_80 = a;
- int x_84 = x_6.x_GLF_uniform_int_values[0].el;
- int x_87 = x_6.x_GLF_uniform_int_values[0].el;
- float x_91 = x_10.x_GLF_uniform_float_values[1].el;
- float x_93 = x_10.x_GLF_uniform_float_values[0].el;
- v1 = (bvec2((x_91 < x_93), true) ? vec2(float(x_84), float(x_87)) : vec2(float(x_78), float(x_80)));
- int x_98 = x_6.x_GLF_uniform_int_values[2].el;
- float x_100 = v1[x_98];
- int x_103 = x_6.x_GLF_uniform_int_values[0].el;
- float x_105 = v1[x_103];
- v2 = (bvec2(false, false) ? vec2(x_105, x_105) : vec2(x_100, x_100));
- int x_109 = x_6.x_GLF_uniform_int_values[1].el;
- float x_110 = float(x_109);
- int x_113 = x_6.x_GLF_uniform_int_values[0].el;
- float x_114 = float(x_113);
- int x_121 = A[int(clamp(vec2(x_110, x_110), vec2(x_114, x_114), v2).x)];
- b = x_121;
- int x_122 = b;
- int x_124 = x_6.x_GLF_uniform_int_values[1].el;
- if ((x_122 == x_124)) {
- int x_130 = x_6.x_GLF_uniform_int_values[0].el;
- int x_133 = x_6.x_GLF_uniform_int_values[2].el;
- int x_136 = x_6.x_GLF_uniform_int_values[2].el;
- int x_139 = x_6.x_GLF_uniform_int_values[0].el;
- x_GLF_color = vec4(float(x_130), float(x_133), float(x_136), float(x_139));
- } else {
- int x_143 = x_6.x_GLF_uniform_int_values[2].el;
- float x_144 = float(x_143);
- x_GLF_color = vec4(x_144, x_144, x_144, x_144);
- }
- return;
-}
-
-struct main_out {
- vec4 x_GLF_color_1;
-};
-
-main_out tint_symbol() {
- main_1();
- main_out tint_symbol_1 = main_out(x_GLF_color);
- return tint_symbol_1;
-}
-
-void main() {
- main_out inner_result = tint_symbol();
- x_GLF_color_1_1 = inner_result.x_GLF_color_1;
- return;
-}
-Error parsing GLSL shader:
-ERROR: 0:64: '' : boolean expression expected
-ERROR: 0:64: '' : compilation terminated
-ERROR: 2 compilation errors. No code generated.
-
-
-