summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_shader.h
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2016-01-27 00:29:53 +0100
committerMarek Olšák <[email protected]>2016-02-21 21:08:57 +0100
commit70de433dea31c75a2e3f02ba3e060634ee66730d (patch)
treed3caabee2aaa27fd8512f878cbf8b34a31eb2b5e /src/gallium/drivers/radeonsi/si_shader.h
parent19a92886a8c495c1bd7816faf974967776488f05 (diff)
radeonsi: add VS prolog
This is disabled with use_monolithic_shaders = true. 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 66b31560b92..e3ba4c7ca04 100644
--- a/src/gallium/drivers/radeonsi/si_shader.h
+++ b/src/gallium/drivers/radeonsi/si_shader.h
@@ -268,6 +268,14 @@ struct si_ps_epilog_bits {
unsigned clamp_color:1;
};
+union si_shader_part_key {
+ struct {
+ struct si_vs_prolog_bits states;
+ unsigned num_input_sgprs:5;
+ unsigned last_input:4;
+ } vs_prolog;
+};
+
union si_shader_key {
struct {
struct si_ps_prolog_bits prolog;
@@ -327,6 +335,7 @@ struct si_shader {
struct si_shader_part {
struct si_shader_part *next;
+ union si_shader_part_key key;
struct radeon_shader_binary binary;
struct si_shader_config config;
};