mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 17:30:12 +01:00
i965: If control_data_header_size_bits is zero, don't do EndPrimitive
This can occur when max_vertices=0 is explicitly specified. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Cc: "12.0" <mesa-stable@lists.freedesktop.org>
This commit is contained in:
parent
049bb94d2e
commit
b27dfa5403
2 changed files with 6 additions and 0 deletions
|
|
@ -1668,6 +1668,9 @@ fs_visitor::emit_gs_end_primitive(const nir_src &vertex_count_nir_src)
|
|||
struct brw_gs_prog_data *gs_prog_data =
|
||||
(struct brw_gs_prog_data *) prog_data;
|
||||
|
||||
if (gs_compile->control_data_header_size_bits == 0)
|
||||
return;
|
||||
|
||||
/* We can only do EndPrimitive() functionality when the control data
|
||||
* consists of cut bits. Fortunately, the only time it isn't is when the
|
||||
* output type is points, in which case EndPrimitive() is a no-op.
|
||||
|
|
|
|||
|
|
@ -539,6 +539,9 @@ vec4_gs_visitor::gs_end_primitive()
|
|||
return;
|
||||
}
|
||||
|
||||
if (c->control_data_header_size_bits == 0)
|
||||
return;
|
||||
|
||||
/* Cut bits use one bit per vertex. */
|
||||
assert(c->control_data_bits_per_vertex == 1);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue