zink: do not lower line-smooth for non-lines

We used to do this correctly, but it seems this accidentally got
dropped.

Fixes: d80a35a7f7 ("zink: unified `zink_set_primitive_emulation_keys` and `zink_create_primitive_emulation_gs`")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23316>
(cherry picked from commit b50c9ba692)
This commit is contained in:
Erik Faye-Lund 2023-05-26 10:53:47 +02:00 committed by Eric Engestrom
parent f4a5cbcdf5
commit 85de50a077
2 changed files with 5 additions and 4 deletions

View file

@ -949,7 +949,7 @@
"description": "zink: do not lower line-smooth for non-lines",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "d80a35a7f760f8ac9a10a1f715859f4db37f883e"
},

View file

@ -2283,9 +2283,10 @@ zink_set_primitive_emulation_keys(struct zink_context *ctx)
zink_set_gs_key(ctx)->lower_line_stipple = lower_line_stipple;
}
lower_line_smooth = screen->driver_workarounds.no_linesmooth &&
ctx->rast_state->base.line_smooth &&
!ctx->num_so_targets;
lower_line_smooth = ctx->gfx_pipeline_state.rast_prim == PIPE_PRIM_LINES &&
screen->driver_workarounds.no_linesmooth &&
ctx->rast_state->base.line_smooth &&
!ctx->num_so_targets;
if (zink_get_fs_key(ctx)->lower_line_smooth != lower_line_smooth) {
assert(zink_get_gs_key(ctx)->lower_line_smooth ==