From: Timothy Arceri Date: Wed, 11 Apr 2018 23:23:02 +0000 (+1000) Subject: glsl: fix compat shaders in GLSL 1.40 X-Git-Tag: upstream/18.1.0~256 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c7e3d31b0b5f22299a6bd72655502ce8427b40bf;p=platform%2Fupstream%2Fmesa.git glsl: fix compat shaders in GLSL 1.40 The compatibility and core tokens were not added until GLSL 1.50, for GLSL 1.40 just assume all shaders built with a compat profile are compat shaders. Fixes rendering issues in Dawn of War II on radeonsi which has enabled OpenGL 3.1 compat support. Fixes: a0c8b49284ef "mesa: enable OpenGL 3.1 with ARB_compatibility" Reviewed-by: Marek Olšák Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105807 --- diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 0cc57f5..5dd362b 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -429,6 +429,8 @@ _mesa_glsl_parse_state::process_version_directive(YYLTYPE *locp, int version, this->language_version = version; this->compat_shader = compat_token_present || + (this->ctx->API == API_OPENGL_COMPAT && + this->language_version == 140) || (!this->es_shader && this->language_version < 140); bool supported = false;