Module: Mesa Branch: main Commit: 5b7eb0d9d348b6320306dcc244c92ee8bb80177a URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5b7eb0d9d348b6320306dcc244c92ee8bb80177a
Author: Mike Blumenkrantz <[email protected]> Date: Thu Jun 23 17:00:18 2022 -0400 zink: break out program primtype->idx conversion function Reviewed-by: Dave Airlie <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17225> --- src/gallium/drivers/zink/zink_program.c | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/gallium/drivers/zink/zink_program.c b/src/gallium/drivers/zink/zink_program.c index a0cee30041c..ccb85219cbb 100644 --- a/src/gallium/drivers/zink/zink_program.c +++ b/src/gallium/drivers/zink/zink_program.c @@ -757,6 +757,21 @@ zink_destroy_compute_program(struct zink_context *ctx, ralloc_free(comp); } +static unsigned +get_primtype_idx(enum pipe_prim_type mode) +{ + if (mode == PIPE_PRIM_PATCHES) + return 3; + switch (u_reduced_prim(mode)) { + case PIPE_PRIM_POINTS: + return 0; + case PIPE_PRIM_LINES: + return 1; + default: + return 2; + } +} + static unsigned get_pipeline_idx(bool have_EXT_extended_dynamic_state, enum pipe_prim_type mode, VkPrimitiveTopology vkmode) { @@ -766,16 +781,7 @@ get_pipeline_idx(bool have_EXT_extended_dynamic_state, enum pipe_prim_type mode, * with vkCmdSetPrimitiveTopology before any drawing commands. */ if (have_EXT_extended_dynamic_state) { - if (mode == PIPE_PRIM_PATCHES) - return 3; - switch (u_reduced_prim(mode)) { - case PIPE_PRIM_POINTS: - return 0; - case PIPE_PRIM_LINES: - return 1; - default: - return 2; - } + return get_primtype_idx(mode); } return vkmode; }
