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:
@@ -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
|
||||
|
||||
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user