zink: fix pv mode lowring index calculation

The provoking vertex mode pass was calculating an offset and then using
it directly instead of adding it to the base index.

Fixes: 5a4083349f ("zink: add provoking vertex mode lowering")
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22599>
(cherry picked from commit 436dacf754)
This commit is contained in:
antonino 2023-04-04 12:20:37 +02:00 committed by Eric Engestrom
parent 0bd99d6943
commit dba29a33a1
2 changed files with 2 additions and 1 deletions

View file

@ -256,7 +256,7 @@
"description": "zink: fix pv mode lowring index calculation",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "5a4083349f36ef6db36a962327de6952a30d0c92"
},

View file

@ -470,6 +470,7 @@ lower_pv_mode_emit_rotated_prim(nir_builder *b,
else if (state->prim == ZINK_PVE_PRIMITIVE_FAN)
rotated_i = nir_imod(b, nir_iadd_imm(b, rotated_i, 2),
three);
rotated_i = nir_iadd(b, rotated_i, current_vertex);
nir_foreach_variable_with_modes(var, b->shader, nir_var_shader_out) {
gl_varying_slot location = var->data.location;
if (state->varyings[location]) {