[Mesa-dev] [PATCH 2/2] glsl: Lower vector_extracts to swizzles after lower_vector_derefs.

Kenneth Graunke kenneth at whitecape.org
Thu Apr 28 21:06:18 UTC 2016


lower_vector_derefs can produce new vector_extract operations.
Neither i965 nor st_glsl_to_tgsi can handle them, so we'd best
convert them to swizzles.

Cc: mesa-stable at lists.freedesktop.org
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95164
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
---
 src/compiler/glsl/linker.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/compiler/glsl/linker.cpp b/src/compiler/glsl/linker.cpp
index dcc8a57..7bd795c 100644
--- a/src/compiler/glsl/linker.cpp
+++ b/src/compiler/glsl/linker.cpp
@@ -4813,6 +4813,7 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog)
                                 &prog->Comp.SharedSize);
 
       lower_vector_derefs(prog->_LinkedShaders[i]);
+      do_vec_index_to_swizzle(prog->_LinkedShaders[i]->ir);
    }
 
 done:
-- 
2.8.0



More information about the mesa-dev mailing list