From 8f40428afbbfa9080964df3cd4f38f24122c4c5e Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Mon, 21 Jul 2014 20:45:29 -0400 Subject: [PATCH] st/mesa: disable copy propagation for tessellation shaders This can't work due to shared inputs and outputs and barriers. --- src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp index 221b6751b26..ad319f06cad 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -5800,7 +5800,11 @@ get_mesa_program(struct gl_context *ctx, /* Perform optimizations on the instructions in the glsl_to_tgsi_visitor. */ v->simplify_cmp(); - v->copy_propagate(); + + if (shader->Type != GL_TESS_CONTROL_SHADER && + shader->Type != GL_TESS_EVALUATION_SHADER) + v->copy_propagate(); + while (v->eliminate_dead_code()); v->merge_two_dsts(); -- 2.30.2