Skip to content

nir/linking_helpers: remove varying accesses in nir_remove_unused_io_vars

This refactors nir_remove_unused_io_vars/nir_remove_unused_varyings to immediately remove the unused variables, instead of demoting them to nir_var_shader_temp.

This is because interp_deref_at_sample of a nir_var_shader_temp is nonsensical and might be ignored by later passes, instead of removed. It also lets RADV remove some later passes which exist just to remove the nir_var_shader_temp variables, and the pass itself should now support array deref of vectors.

Merge request reports