On Thu, Dec 14, 2017 at 4:48 PM, Samuel Pitoiset <samuel.pitoi...@gmail.com> wrote: > Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com> > --- > src/amd/common/ac_shader_info.c | 8 ++++++++ > src/amd/common/ac_shader_info.h | 1 + > 2 files changed, 9 insertions(+) > > diff --git a/src/amd/common/ac_shader_info.c b/src/amd/common/ac_shader_info.c > index 09dd4bbd55..01949770d6 100644 > --- a/src/amd/common/ac_shader_info.c > +++ b/src/amd/common/ac_shader_info.c > @@ -45,6 +45,14 @@ gather_intrinsic_info(nir_intrinsic_instr *instr, struct > ac_shader_info *info) > case nir_intrinsic_load_num_work_groups: > info->cs.uses_grid_size = true; > break; > + case nir_intrinsic_load_work_group_id: { > + unsigned mask = nir_ssa_def_components_read(&instr->dest.ssa);
Nice find that there is an utility function for this. Reviewed-by: Bas Nieuwenhuizen <b...@basnieuwenhuizen.nl> > + while (mask) { > + unsigned i = u_bit_scan(&mask); > + info->cs.uses_block_id[i] = true; > + } > + break; > + } > case nir_intrinsic_load_sample_id: > info->ps.force_persample = true; > break; > diff --git a/src/amd/common/ac_shader_info.h b/src/amd/common/ac_shader_info.h > index 3c809cce13..7beefd02ac 100644 > --- a/src/amd/common/ac_shader_info.h > +++ b/src/amd/common/ac_shader_info.h > @@ -43,6 +43,7 @@ struct ac_shader_info { > } ps; > struct { > bool uses_grid_size; > + bool uses_block_id[3]; > } cs; > }; > > -- > 2.15.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev