Reviewed-by: Marek Olšák <[email protected]> Marek
On Fri, Sep 8, 2017 at 7:03 PM, Nicolai Hähnle <[email protected]> wrote: > From: Nicolai Hähnle <[email protected]> > > Don't get distracted by record dereferences between array references. > > Fixes dEQP-GLES31.functional.tessellation.user_defined_io.per_vertex_block.* > > Cc: [email protected] > --- > 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 > @@ -2525,21 +2525,21 @@ glsl_to_tgsi_visitor::visit(ir_dereference_array *ir) > */ > int element_size = ir->type->without_array()->is_record() ? > st_glsl_storage_type_size(ir->type, var->data.bindless) : > type_size(ir->type); > > index = ir->array_index->constant_expression_value(ralloc_parent(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) && > !ir->variable_referenced()->data.patch; > break; > case GL_TESS_EVALUATION_PROGRAM_NV: > is_2D = src.file == PROGRAM_INPUT && > !ir->variable_referenced()->data.patch; > break; > case GL_GEOMETRY_PROGRAM_NV: > -- > 2.11.0 > > _______________________________________________ > mesa-dev mailing list > [email protected] > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-dev
