On Tue, Apr 10, 2018 at 3:16 PM, Timothy Arceri <tarc...@itsqueeze.com> wrote:
> > > On 11/04/18 01:11, Jason Ekstrand wrote: > >> On Tue, Apr 10, 2018 at 8:05 AM, Karol Herbst <kher...@redhat.com >> <mailto:kher...@redhat.com>> wrote: >> >> If the bindless image is passed through a struct we ended up getting >> the >> glsl_type of the struct, not the image. >> >> variable_referenced points to the declaration of the struct, so it >> won't work >> for bindless images. So just drop it. >> >> Signed-off-by: Karol Herbst <kher...@redhat.com >> <mailto:kher...@redhat.com>> >> --- >> src/compiler/glsl/glsl_to_nir.cpp | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/src/compiler/glsl/glsl_to_nir.cpp >> b/src/compiler/glsl/glsl_to_nir.cpp >> index 9f233637306..bb9ba3af04a 100644 >> --- a/src/compiler/glsl/glsl_to_nir.cpp >> +++ b/src/compiler/glsl/glsl_to_nir.cpp >> @@ -893,7 +893,7 @@ nir_visitor::visit(ir_call *ir) >> exec_node *param = ir->actual_parameters.get_head(); >> ir_dereference *image = (ir_dereference *)param; >> const glsl_type *type = >> - image->variable_referenced()->type->without_array(); >> + image->type->without_array(); >> >> >> I asked this question on the last version as well: Do we really need >> without_array()? >> > > And I replied to that question as well :P > > The struct member type is set in ir.cpp without removing the array: > > this->type = this->record->type->field_type(field); > I'm not sure what you mean though. if we have an array dereference, it will strip one array level off of the type for each array dereference.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev