Module: Mesa Branch: main Commit: dfa60b70e631f308523e8dca7ea68c84b166bc27 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dfa60b70e631f308523e8dca7ea68c84b166bc27
Author: Alyssa Rosenzweig <aly...@rosenzweig.io> Date: Sat Nov 18 22:06:28 2023 -0400 radeonsi: use pipe_shader_from_nir Signed-off-by: Alyssa Rosenzweig <aly...@rosenzweig.io> Reviewed-by: Eric Engestrom <e...@igalia.com> Reviewed-by: Marek Olšák <marek.ol...@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26272> --- src/gallium/drivers/radeonsi/si_shaderlib_nir.c | 26 ++----------------------- 1 file changed, 2 insertions(+), 24 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_shaderlib_nir.c b/src/gallium/drivers/radeonsi/si_shaderlib_nir.c index 2b4373d16e3..ee9bf2fc159 100644 --- a/src/gallium/drivers/radeonsi/si_shaderlib_nir.c +++ b/src/gallium/drivers/radeonsi/si_shaderlib_nir.c @@ -4,6 +4,7 @@ * SPDX-License-Identifier: MIT */ +#include "gallium/auxiliary/nir/pipe_nir.h" #define AC_SURFACE_INCLUDE_NIR #include "ac_surface.h" #include "si_pipe.h" @@ -13,30 +14,7 @@ static void *create_shader_state(struct si_context *sctx, nir_shader *nir) { sctx->b.screen->finalize_nir(sctx->b.screen, (void*)nir); - - struct pipe_shader_state state = {0}; - state.type = PIPE_SHADER_IR_NIR; - state.ir.nir = nir; - - switch (nir->info.stage) { - case MESA_SHADER_VERTEX: - return sctx->b.create_vs_state(&sctx->b, &state); - case MESA_SHADER_TESS_CTRL: - return sctx->b.create_tcs_state(&sctx->b, &state); - case MESA_SHADER_TESS_EVAL: - return sctx->b.create_tes_state(&sctx->b, &state); - case MESA_SHADER_FRAGMENT: - return sctx->b.create_fs_state(&sctx->b, &state); - case MESA_SHADER_COMPUTE: { - struct pipe_compute_state cs_state = {0}; - cs_state.ir_type = PIPE_SHADER_IR_NIR; - cs_state.prog = nir; - return sctx->b.create_compute_state(&sctx->b, &cs_state); - } - default: - unreachable("invalid shader stage"); - return NULL; - } + return pipe_shader_from_nir(&sctx->b, nir); } static nir_def *get_global_ids(nir_builder *b, unsigned num_components)