Mesa (main): lavapipe: move vertex input dynamic states into vertex input block

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Mon Jul 25 17:42:19 UTC 2022


Module: Mesa
Branch: main
Commit: 7ef76dec73b7742a5de7dba96a0408daed1306ea
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7ef76dec73b7742a5de7dba96a0408daed1306ea

Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date:   Mon Jul 25 12:41:36 2022 -0400

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 <brianp at vmware.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand at collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17738>

---

 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;



More information about the mesa-commit mailing list