From 7ef76dec73b7742a5de7dba96a0408daed1306ea Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 25 Jul 2022 12:41:36 -0400 Subject: [PATCH] lavapipe: move vertex input dynamic states into vertex input block these states were erroneously assigned to the pre-rasterization stage for pipeline libraries when they instead belong to the vertex input stage cc: mesa-stable Reviewed-by: Brian Paul Reviewed-by: Jason Ekstrand Part-of: --- src/gallium/frontends/lavapipe/lvp_pipeline.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/gallium/frontends/lavapipe/lvp_pipeline.c b/src/gallium/frontends/lavapipe/lvp_pipeline.c index 798c6b904e5..6b64878ec12 100644 --- a/src/gallium/frontends/lavapipe/lvp_pipeline.c +++ b/src/gallium/frontends/lavapipe/lvp_pipeline.c @@ -281,6 +281,8 @@ deep_copy_dynamic_state(void *mem_ctx, switch (src->pDynamicStates[i]) { case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE: case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT: + case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY: + case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE: if (stages & VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT) states[dst->dynamicStateCount++] = src->pDynamicStates[i]; break; @@ -291,12 +293,10 @@ deep_copy_dynamic_state(void *mem_ctx, case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT: case VK_DYNAMIC_STATE_CULL_MODE: case VK_DYNAMIC_STATE_FRONT_FACE: - case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY: case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT: case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT: case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT: case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE: - case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE: if (stages & VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT) states[dst->dynamicStateCount++] = src->pDynamicStates[i]; break;