From: antonino Date: Fri, 5 May 2023 15:40:32 +0000 (+0200) Subject: zink: handle interface blocks in `copy_vars` X-Git-Tag: upstream/23.3.3~8666 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=474d93719e15730152407c7fa8cc299dcee758ea;p=platform%2Fupstream%2Fmesa.git zink: handle interface blocks in `copy_vars` Fixes: edaf49160e5 ("zink: fix array copying in pv lowering") Part-of: --- diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c index a74af59..f44b647 100644 --- a/src/gallium/drivers/zink/zink_compiler.c +++ b/src/gallium/drivers/zink/zink_compiler.c @@ -55,7 +55,7 @@ static void copy_vars(nir_builder *b, nir_deref_instr *dst, nir_deref_instr *src) { assert(glsl_get_bare_type(dst->type) == glsl_get_bare_type(src->type)); - if (glsl_type_is_struct(dst->type)) { + if (glsl_type_is_struct_or_ifc(dst->type)) { for (unsigned i = 0; i < glsl_get_length(dst->type); ++i) { copy_vars(b, nir_build_deref_struct(b, dst, i), nir_build_deref_struct(b, src, i)); }