nir: skip lowering io to scalar for must_be_shader_input

These varyings cannot be packed by the GLSL linkers packing pass
so we need to skip this lowering until later when we can properly
handle them.

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15731>
This commit is contained in:
Timothy Arceri 2022-03-23 15:24:10 +11:00 committed by Marge Bot
parent 99ab530617
commit c1fbd0b8ab

View file

@ -470,6 +470,9 @@ nir_lower_io_to_scalar_early_instr(nir_builder *b, nir_instr *instr, void *data)
if (var->data.always_active_io)
return false;
if (var->data.must_be_shader_input)
return false;
/* Skip types we cannot split */
if (glsl_type_is_matrix(glsl_without_array(var->type)) ||
glsl_type_is_struct_or_ifc(glsl_without_array(var->type)))