radeonsi: clean up lucky #include dependencies

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
This commit is contained in:
Marek Olšák
2016-10-02 17:40:49 +02:00
parent 53d2c8f00f
commit 3388f27d84
2 changed files with 35 additions and 36 deletions
+33 -4
View File
@@ -26,10 +26,7 @@
#ifndef SI_PIPE_H
#define SI_PIPE_H
#include "si_state.h"
#include "util/u_queue.h"
#include <llvm-c/TargetMachine.h>
#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
+2 -32
View File
@@ -69,7 +69,9 @@
#define SI_SHADER_H
#include <llvm-c/Core.h> /* LLVMModuleRef */
#include <llvm-c/TargetMachine.h>
#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,