summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.h
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2016-01-26 22:12:26 +0100
committerMarek Olšák <[email protected]>2016-02-21 21:08:57 +0100
commit17eb99d8b9fa633776ff01abe4ccffcf81729d5c (patch)
treeb7e900aee8631f37930abf8c76e48d639489eceb /src/gallium/drivers/radeonsi/si_shader.h
parent9d5bf1a3ef7f8f48e94cede811b35ada516639d7 (diff)
radeonsi: add code for combining and uploading shaders from 3 shader parts
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_shader.h')
-rw-r--r--src/gallium/drivers/radeonsi/si_shader.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_shader.h b/src/gallium/drivers/radeonsi/si_shader.h
index 9331156b002..4c3c14ae169 100644
--- a/src/gallium/drivers/radeonsi/si_shader.h
+++ b/src/gallium/drivers/radeonsi/si_shader.h
@@ -304,6 +304,9 @@ struct si_shader {
struct si_shader_selector *selector;
struct si_shader *next_variant;
+ struct si_shader_part *prolog;
+ struct si_shader_part *epilog;
+
struct si_shader *gs_copy_shader;
struct si_pm4_state *pm4;
struct r600_resource *bo;
@@ -322,6 +325,12 @@ struct si_shader {
unsigned nr_param_exports;
};
+struct si_shader_part {
+ struct si_shader_part *next;
+ struct radeon_shader_binary binary;
+ struct si_shader_config config;
+};
+
static inline struct tgsi_shader_info *si_get_vs_info(struct si_context *sctx)
{
if (sctx->gs_shader.cso)