Mesa (master): Revert "glsl: don' t try to lower non-gl builtins as if they were gl_FragData"
Marek Olšák
mareko at kemper.freedesktop.org
Mon Aug 8 21:24:31 UTC 2016
Module: Mesa
Branch: master
Commit: 1ebf3c4b6741a3a3a9d46048abe3996cb9a86334
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1ebf3c4b6741a3a3a9d46048abe3996cb9a86334
Author: Marek Olšák <marek.olsak at amd.com>
Date: Mon Aug 8 22:05:29 2016 +0200
Revert "glsl: don't try to lower non-gl builtins as if they were gl_FragData"
This reverts commit a37e46323c7e18bec4160f2f66847c10b7041dc1.
It broke the game Overlord such that it hung a GCN GNU. While I don't know
how the hang happened because of its randomness and gfx corruption precedes
it, many of the shaders contain this:
out vec4 FragData[gl_MaxDrawBuffers];
---
src/compiler/glsl/opt_dead_builtin_varyings.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/compiler/glsl/opt_dead_builtin_varyings.cpp b/src/compiler/glsl/opt_dead_builtin_varyings.cpp
index 900a096..33648d7 100644
--- a/src/compiler/glsl/opt_dead_builtin_varyings.cpp
+++ b/src/compiler/glsl/opt_dead_builtin_varyings.cpp
@@ -85,8 +85,7 @@ public:
{
ir_variable *var = ir->variable_referenced();
- if (!var || var->data.mode != this->mode || !var->type->is_array() ||
- !is_gl_identifier(var->name))
+ if (!var || var->data.mode != this->mode || !var->type->is_array())
return visit_continue;
/* Only match gl_FragData[], not gl_SecondaryFragDataEXT[] */
More information about the mesa-commit
mailing list