From bdb3daab7c550984b56539142f053ae7950c93ad Mon Sep 17 00:00:00 2001 From: antonino Date: Tue, 4 Apr 2023 17:00:53 +0200 Subject: [PATCH] zink: fix exit condition on pv emulation loop The exit condition was not correct causing the pv emulation lowering pass to emit garbage for incomplete primitives. Fixes: 5a4083349f3 ("zink: add provoking vertex mode lowering") Reviewed-by: Erik Faye-Lund Part-of: --- src/gallium/drivers/zink/zink_compiler.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c index aed61dbd6f0..a23a036ad90 100644 --- a/src/gallium/drivers/zink/zink_compiler.c +++ b/src/gallium/drivers/zink/zink_compiler.c @@ -523,7 +523,7 @@ lower_pv_mode_gs_end_primitive(nir_builder *b, { nir_ssa_def *out_pos_counter = nir_load_var(b, state->out_pos_counter); nir_push_if(b, nir_ilt(b, nir_isub(b, pos_counter, out_pos_counter), - nir_imm_int(b, state->primitive_vert_count - 1))); + nir_imm_int(b, state->primitive_vert_count))); nir_jump(b, nir_jump_break); nir_pop_if(b, NULL);