Rb for the series. (I can't type my surname on the phone) Marek
On Thu, Apr 25, 2019, 3:03 AM Timothy Arceri <tarc...@itsqueeze.com> wrote: > Some of the opts are not called in the general optimastion loop > in the state trackers glsl -> nir conversion. We need to call > the radeonsi specific optimisation once before scanning over > the nir otherwise we can end up gathering info on code that > is later removed. > > Fixes an assert in the piglit test: > > ./bin/varying-struct-centroid_gles3 > --- > src/gallium/drivers/radeonsi/si_compute.c | 1 + > src/gallium/drivers/radeonsi/si_state_shaders.c | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/src/gallium/drivers/radeonsi/si_compute.c > b/src/gallium/drivers/radeonsi/si_compute.c > index 541d7e6f118..f1a433b72df 100644 > --- a/src/gallium/drivers/radeonsi/si_compute.c > +++ b/src/gallium/drivers/radeonsi/si_compute.c > @@ -106,6 +106,7 @@ static void si_create_compute_state_async(void *job, > int thread_index) > assert(program->ir_type == PIPE_SHADER_IR_NIR); > sel.nir = program->ir.nir; > > + si_nir_opts(sel.nir); > si_nir_scan_shader(sel.nir, &sel.info); > si_lower_nir(&sel); > } > diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c > b/src/gallium/drivers/radeonsi/si_state_shaders.c > index 5bdfd4f6ac1..7250b40c5db 100644 > --- a/src/gallium/drivers/radeonsi/si_state_shaders.c > +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c > @@ -2240,6 +2240,7 @@ static void *si_create_shader_selector(struct > pipe_context *ctx, > > sel->nir = state->ir.nir; > > + si_nir_opts(sel->nir); > si_nir_scan_shader(sel->nir, &sel->info); > si_nir_scan_tess_ctrl(sel->nir, &sel->tcs_info); > } > -- > 2.20.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