mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 20:28:04 +02:00
r600/sfn: catch remaining indirect inputs when lowering GS input arrays
Lowering IO to temps leads to problems with RA with piglit
spec@glsl-1.50@execution@geometry@max-input-component
Not doing so results in an assertion failure with piglit
spec@glsl-1.50@execution@geometry@dynamic_input_array_index
because not all indirect IO access is lowered. Using
nir_lower_indirect_derefs works around this limitations.
v2: Fix formatting (Patrick Lerda)
Fixes: 1186c73c6 (r600: implement gs indirect load_per_vertex_input)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36051>
This commit is contained in:
parent
00b752565c
commit
5d4f59a3ed
1 changed files with 5 additions and 0 deletions
|
|
@ -798,6 +798,11 @@ r600_finalize_nir_common(nir_shader *nir, enum amd_gfx_level gfx_level)
|
|||
|
||||
if (nir->info.stage == MESA_SHADER_GEOMETRY) {
|
||||
NIR_PASS(_, nir, r600_gs_load_deref_io_to_indirect_per_vertex_input);
|
||||
NIR_PASS(_,
|
||||
nir,
|
||||
nir_lower_indirect_derefs,
|
||||
nir_var_shader_in,
|
||||
R600_GS_VERTEX_INDIRECT_TOTAL);
|
||||
}
|
||||
|
||||
NIR_PASS(_, nir, nir_lower_flrp, nir_lower_flrp_mask, false);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue