Reviewed-by: Marek Olšák <marek.ol...@amd.com> Marek
On Tue, Feb 6, 2018 at 1:11 AM, Timothy Arceri <tarc...@itsqueeze.com> wrote: > This fixes a regression for now, in the future we should gather > the used components properly. > > V2: just set for VS and correctly handle doubles > > Fixes: be973ed21f6e "radeonsi: load the right number of components for VS > inputs and TBOs" > > Cc: Marek Olšák <mar...@gmail.com> > --- > src/gallium/drivers/radeonsi/si_shader_nir.c | 14 ++++++++++---- > 1 file changed, 10 insertions(+), 4 deletions(-) > > diff --git a/src/gallium/drivers/radeonsi/si_shader_nir.c > b/src/gallium/drivers/radeonsi/si_shader_nir.c > index 8abffdb8fc..06d9354363 100644 > --- a/src/gallium/drivers/radeonsi/si_shader_nir.c > +++ b/src/gallium/drivers/radeonsi/si_shader_nir.c > @@ -304,14 +304,22 @@ void si_nir_scan_shader(const struct nir_shader *nir, > unsigned attrib_count = glsl_count_attribute_slots(type, > > nir->info.stage == MESA_SHADER_VERTEX); > > + i = variable->data.driver_location; > + > /* Vertex shader inputs don't have semantics. The state > * tracker has already mapped them to attributes via > * variable->data.driver_location. > */ > if (nir->info.stage == MESA_SHADER_VERTEX) { > - if (glsl_type_is_dual_slot(variable->type)) > + /* TODO: gather the actual input useage and remove > this. */ > + info->input_usage_mask[i] = TGSI_WRITEMASK_XYZW; > + > + if (glsl_type_is_dual_slot(variable->type)) { > num_inputs += 2; > - else > + > + /* TODO: gather the actual input useage and > remove this. */ > + info->input_usage_mask[i+1] = > TGSI_WRITEMASK_XYZW; > + } else > num_inputs++; > continue; > } > @@ -327,8 +335,6 @@ void si_nir_scan_shader(const struct nir_shader *nir, > continue; > } > > - i = variable->data.driver_location; > - > for (unsigned j = 0; j < attrib_count; j++, i++) { > > if (processed_inputs & ((uint64_t)1 << i)) > -- > 2.14.3 > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev