ac/nir/ngg: Move wait attr ring workaround for GS to better place.

The call depends on the phis created by create_output_phis so
the code becomes more readable if we move it closer to that.

Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32640>
This commit is contained in:
Timur Kristóf 2024-12-20 12:42:02 -06:00
parent 9acc2f2435
commit 68dbcdd935

View file

@ -3262,6 +3262,9 @@ ngg_gs_export_vertices(nir_builder *b, nir_def *max_num_out_vtx, nir_def *tid_in
b->shader->info.outputs_written,
b->shader->info.outputs_written_16bit,
&s->out, tid_in_tg, max_num_out_vtx);
if (wait_attr_ring)
export_pos0_wait_attr_ring(b, if_vtx_export_thread, s->out.outputs, s->options);
} else {
b->cursor = nir_after_cf_list(&if_vtx_export_thread->then_list);
ac_nir_export_parameters(b, s->options->vs_output_param_offset,
@ -3270,9 +3273,6 @@ ngg_gs_export_vertices(nir_builder *b, nir_def *max_num_out_vtx, nir_def *tid_in
&s->out);
}
}
if (wait_attr_ring)
export_pos0_wait_attr_ring(b, if_vtx_export_thread, s->out.outputs, s->options);
}
static void