diff --git a/src/compiler/nir/nir_recompute_io_bases.c b/src/compiler/nir/nir_recompute_io_bases.c index 04b57f68944..28ab9850fef 100644 --- a/src/compiler/nir/nir_recompute_io_bases.c +++ b/src/compiler/nir/nir_recompute_io_bases.c @@ -102,6 +102,8 @@ nir_recompute_io_bases(nir_shader *nir, nir_variable_mode modes) sem.location)) { num_slots = DIV_ROUND_UP(num_slots, 4); } + if (sem.per_view) + num_slots *= util_bitcount(nir->info.view_mask); if (mode == nir_var_shader_in) { for (unsigned i = 0; i < num_slots; i++) {