From 03203b74486357c2bc77c53302f0f667f1df3ffa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolai=20H=C3=A4hnle?= Date: Thu, 7 Sep 2017 18:43:42 +0200 Subject: [PATCH] st/glsl_to_tgsi: only the first (inner-most) array reference can be a 2D index MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Don't get distracted by record dereferences between array references. Fixes dEQP-GLES31.functional.tessellation.user_defined_io.per_vertex_block.* Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Marek Olšák --- src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 2 +- 1 file changed, 1 insertion(+), 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 026aea5d53d..cf6e8f8fde1 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -2532,7 +2532,7 @@ glsl_to_tgsi_visitor::visit(ir_dereference_array *ir) ir->array->accept(this); src = this->result; - if (ir->array->ir_type != ir_type_dereference_array) { + if (!src.has_index2) { switch (this->prog->Target) { case GL_TESS_CONTROL_PROGRAM_NV: is_2D = (src.file == PROGRAM_INPUT || src.file == PROGRAM_OUTPUT) &&