diff --git a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c index 6108bda4ea8..4fdab7bb494 100644 --- a/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c +++ b/src/gallium/drivers/zink/nir_to_spirv/nir_to_spirv.c @@ -969,7 +969,7 @@ emit_so_info(struct ntv_context *ctx, const struct zink_so_info *so_info) * so we need to ensure that the new xfb location slot doesn't conflict with any previously-emitted * outputs. */ - uint32_t location = reserve_slot(ctx); + uint32_t location = ctx->shader_slots_reserved + i; assert(location < VARYING_SLOT_VAR0); spirv_builder_emit_location(&ctx->builder, var_id, location);