From 3388f27d8439e75a0f4e64fd12f0433ccb2b3698 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Sun, 2 Oct 2016 17:40:49 +0200 Subject: [PATCH] radeonsi: clean up lucky #include dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Reviewed-by: Nicolai Hähnle Reviewed-by: Edward O'Callaghan --- src/gallium/drivers/radeonsi/si_pipe.h | 37 +++++++++++++++++++++--- src/gallium/drivers/radeonsi/si_shader.h | 34 ++-------------------- 2 files changed, 35 insertions(+), 36 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index 55e4ca7e294..558e1858563 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -26,10 +26,7 @@ #ifndef SI_PIPE_H #define SI_PIPE_H -#include "si_state.h" -#include "util/u_queue.h" - -#include +#include "si_shader.h" #ifdef PIPE_ARCH_BIG_ENDIAN #define SI_BIG_ENDIAN 1 @@ -444,4 +441,36 @@ si_mark_atom_dirty(struct si_context *sctx, si_set_atom_dirty(sctx, atom, true); } +static inline struct tgsi_shader_info *si_get_vs_info(struct si_context *sctx) +{ + if (sctx->gs_shader.cso) + return &sctx->gs_shader.cso->info; + else if (sctx->tes_shader.cso) + return &sctx->tes_shader.cso->info; + else if (sctx->vs_shader.cso) + return &sctx->vs_shader.cso->info; + else + return NULL; +} + +static inline struct si_shader* si_get_vs_state(struct si_context *sctx) +{ + if (sctx->gs_shader.current) + return sctx->gs_shader.current->gs_copy_shader; + else if (sctx->tes_shader.current) + return sctx->tes_shader.current; + else + return sctx->vs_shader.current; +} + +static inline bool si_vs_exports_prim_id(struct si_shader *shader) +{ + if (shader->selector->type == PIPE_SHADER_VERTEX) + return shader->key.vs.epilog.export_prim_id; + else if (shader->selector->type == PIPE_SHADER_TESS_EVAL) + return shader->key.tes.epilog.export_prim_id; + else + return false; +} + #endif diff --git a/src/gallium/drivers/radeonsi/si_shader.h b/src/gallium/drivers/radeonsi/si_shader.h index de4705dd513..67cb67d2934 100644 --- a/src/gallium/drivers/radeonsi/si_shader.h +++ b/src/gallium/drivers/radeonsi/si_shader.h @@ -69,7 +69,9 @@ #define SI_SHADER_H #include /* LLVMModuleRef */ +#include #include "tgsi/tgsi_scan.h" +#include "util/u_queue.h" #include "si_state.h" struct radeon_shader_binary; @@ -456,38 +458,6 @@ struct si_shader_part { struct si_shader_config config; }; -static inline struct tgsi_shader_info *si_get_vs_info(struct si_context *sctx) -{ - if (sctx->gs_shader.cso) - return &sctx->gs_shader.cso->info; - else if (sctx->tes_shader.cso) - return &sctx->tes_shader.cso->info; - else if (sctx->vs_shader.cso) - return &sctx->vs_shader.cso->info; - else - return NULL; -} - -static inline struct si_shader* si_get_vs_state(struct si_context *sctx) -{ - if (sctx->gs_shader.current) - return sctx->gs_shader.current->gs_copy_shader; - else if (sctx->tes_shader.current) - return sctx->tes_shader.current; - else - return sctx->vs_shader.current; -} - -static inline bool si_vs_exports_prim_id(struct si_shader *shader) -{ - if (shader->selector->type == PIPE_SHADER_VERTEX) - return shader->key.vs.epilog.export_prim_id; - else if (shader->selector->type == PIPE_SHADER_TESS_EVAL) - return shader->key.tes.epilog.export_prim_id; - else - return false; -} - /* si_shader.c */ int si_compile_tgsi_shader(struct si_screen *sscreen, LLVMTargetMachineRef tm, -- 2.30.2