ac/nir/ngg: Fix cross-invocation indices and cull outputs.
The layout calculation accidentally thought these would be
stored in variables, but that's not the case.
Fixes: 697ea02202
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18846>
This commit is contained in:
@@ -3880,8 +3880,8 @@ ms_calculate_output_layout(unsigned api_shared_size,
|
||||
ms_out_mem_layout l = { .lds = { .total_size = api_shared_size } };
|
||||
|
||||
/* Outputs without cross-invocation access can be stored in variables. */
|
||||
l.var.vtx_attr.mask = per_vertex_output_mask & ~lds_per_vertex_output_mask;
|
||||
l.var.prm_attr.mask = per_primitive_output_mask & ~lds_per_primitive_output_mask;
|
||||
l.var.vtx_attr.mask = per_vertex_output_mask & ~cross_invocation_output_access;
|
||||
l.var.prm_attr.mask = per_primitive_output_mask & ~cross_invocation_output_access;
|
||||
|
||||
/* Workgroup information, see ms_workgroup_* for the layout. */
|
||||
l.lds.workgroup_info_addr = ALIGN(l.lds.total_size, 16);
|
||||
|
Reference in New Issue
Block a user