summaryrefslogtreecommitdiffstats
path: root/src/glsl/ast_type.cpp
diff options
context:
space:
mode:
authorFrancisco Jerez <currojerez@riseup.net>2014-12-04 10:54:13 +0200
committerFrancisco Jerez <currojerez@riseup.net>2015-05-04 17:44:16 +0300
commit6c1f6f8291859209a9b585f65258e090d91f0347 (patch)
treea560fec85f3e0637078e9d062cd5616fabba8425 /src/glsl/ast_type.cpp
parentb5994d24d821082965636a5fe6e94079975777d0 (diff)
downloadexternal_mesa3d-6c1f6f8291859209a9b585f65258e090d91f0347.zip
external_mesa3d-6c1f6f8291859209a9b585f65258e090d91f0347.tar.gz
external_mesa3d-6c1f6f8291859209a9b585f65258e090d91f0347.tar.bz2
glsl: Error out on invalid uses of the early_fragment_tests layout qualifier.
Reviewed-by: Matt Turner <mattst88@gmail.com>
Diffstat (limited to 'src/glsl/ast_type.cpp')
-rw-r--r--src/glsl/ast_type.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/glsl/ast_type.cpp b/src/glsl/ast_type.cpp
index b596cd5..34c2b73 100644
--- a/src/glsl/ast_type.cpp
+++ b/src/glsl/ast_type.cpp
@@ -293,11 +293,7 @@ ast_type_qualifier::merge_in_qualifier(YYLTYPE *loc,
valid_in_mask.flags.q.invocations = 1;
break;
case MESA_SHADER_FRAGMENT:
- if (q.flags.q.early_fragment_tests) {
- state->early_fragment_tests = true;
- } else {
- _mesa_glsl_error(loc, state, "invalid input layout qualifier");
- }
+ valid_in_mask.flags.q.early_fragment_tests = 1;
break;
case MESA_SHADER_COMPUTE:
create_cs_ast |=
@@ -345,6 +341,10 @@ ast_type_qualifier::merge_in_qualifier(YYLTYPE *loc,
this->invocations = q.invocations;
}
+ if (q.flags.q.early_fragment_tests) {
+ state->early_fragment_tests = true;
+ }
+
if (create_gs_ast) {
node = new(mem_ctx) ast_gs_input_layout(*loc, q.prim_type);
} else if (create_cs_ast) {