zink: handle interface blocks in copy_vars

Fixes: edaf49160e ("zink: fix array copying in pv lowering")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22871>
This commit is contained in:
antonino 2023-05-05 17:40:32 +02:00 committed by Marge Bot
parent 8f22669f9b
commit 474d93719e

View file

@ -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));
}