[Mesa-dev] [PATCH] glsl: Mark "row_major" as not a reserved word in GLSL ES 3.0.
Ian Romanick
idr at freedesktop.org
Thu Jul 11 14:11:18 PDT 2013
On 07/11/2013 10:13 AM, Matt Turner wrote:
> We mark ARB_uniform_buffer_object as enabled under ES 3 since it
> contains that functionality, which tricked the compiler into tokenizing
> "row_major".
I believe this is a candidate for stable. You should mail it to
mesa-stable after it lands. It will be fun to test that new path. :)
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
> ---
> src/glsl/glsl_lexer.ll | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/glsl/glsl_lexer.ll b/src/glsl/glsl_lexer.ll
> index 008ef30..e66ce7b 100644
> --- a/src/glsl/glsl_lexer.ll
> +++ b/src/glsl/glsl_lexer.ll
> @@ -72,7 +72,7 @@ static int classify_identifier(struct _mesa_glsl_parse_state *, const char *);
> alt_expr, token) \
> do { \
> if (yyextra->is_version(allowed_glsl, allowed_glsl_es) \
> - || alt_expr) { \
> + || (alt_expr)) { \
> return token; \
> } else if (yyextra->is_version(reserved_glsl, \
> reserved_glsl_es)) { \
> @@ -522,7 +522,7 @@ image2DArrayShadow KEYWORD(130, 300, 0, 0, IMAGE2DARRAYSHADOW);
> imageBuffer KEYWORD(130, 300, 0, 0, IMAGEBUFFER);
> iimageBuffer KEYWORD(130, 300, 0, 0, IIMAGEBUFFER);
> uimageBuffer KEYWORD(130, 300, 0, 0, UIMAGEBUFFER);
> -row_major KEYWORD_WITH_ALT(130, 0, 140, 0, yyextra->ARB_uniform_buffer_object_enable, ROW_MAJOR);
> +row_major KEYWORD_WITH_ALT(130, 0, 140, 0, yyextra->ARB_uniform_buffer_object_enable && !yyextra->es_shader, ROW_MAJOR);
>
> /* Additional reserved words in GLSL 1.40 */
> isampler2DRect KEYWORD(140, 300, 140, 0, ISAMPLER2DRECT);
>
More information about the mesa-dev
mailing list