[Mesa-dev] [PATCH] glsl: fix compat shaders in GLSL 1.40

Timothy Arceri tarceri at itsqueeze.com
Wed Apr 11 23:29:47 UTC 2018


The compatibility and core tokens were not added until GLSL 1.50,
for GLSL 1.40 just assume all shader 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.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105807
---
 src/compiler/glsl/glsl_parser_extras.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp
index 0cc57f5a887..5dd362b3e38 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;
-- 
2.17.0



More information about the mesa-dev mailing list