glsl: add unsigned int type for EXT_GPU_shader4

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Marek Olšák
2018-08-07 17:18:40 -04:00
parent 2d8f4fff49
commit a7f38e7fbd
2 changed files with 11 additions and 2 deletions

View File

@@ -612,7 +612,7 @@ short KEYWORD(110, 100, 0, 0, SHORT_TOK);
double TYPE_WITH_ALT(130, 100, 130, 300, yyextra->ARB_gpu_shader_fp64_enable, glsl_type::double_type);
half KEYWORD(110, 100, 0, 0, HALF);
fixed KEYWORD(110, 100, 0, 0, FIXED_TOK);
unsigned KEYWORD(110, 100, 0, 0, UNSIGNED);
unsigned KEYWORD_WITH_ALT(110, 100, 0, 0, yyextra->EXT_gpu_shader4_enable, UNSIGNED);
input KEYWORD(110, 100, 0, 0, INPUT_TOK);
output KEYWORD(110, 100, 0, 0, OUTPUT);
hvec2 KEYWORD(110, 100, 0, 0, HVEC2);

View File

@@ -2308,7 +2308,16 @@ type_specifier_nonarray:
basic_type_specifier_nonarray:
VOID_TOK { $$ = glsl_type::void_type; }
| BASIC_TYPE_TOK { $$ = $1; };
| BASIC_TYPE_TOK { $$ = $1; }
| UNSIGNED BASIC_TYPE_TOK
{
if ($2 == glsl_type::int_type) {
$$ = glsl_type::uint_type;
} else {
_mesa_glsl_error(&@1, state,
"\"unsigned\" is only allowed before \"int\"");
}
}
;
precision_qualifier: