summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_emit.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-04-12 03:46:03 +0200
committerMarek Olšák <maraeo@gmail.com>2010-04-12 04:16:08 +0200
commit5633392966f56a75cb2a675ef9594e987c4591b9 (patch)
tree61c4486e35c1b976ab9120ec66b14bcd1d2c3aa3 /src/gallium/drivers/r300/r300_emit.c
parent34092c55d63e24a4f326bd9bb90765ea4ec7e17e (diff)
r300g: atomize compiler's state variables for fragment shader
Diffstat (limited to 'src/gallium/drivers/r300/r300_emit.c')
-rw-r--r--src/gallium/drivers/r300/r300_emit.c12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c
index 2fa3f6fe2e..fd857a4ac1 100644
--- a/src/gallium/drivers/r300/r300_emit.c
+++ b/src/gallium/drivers/r300/r300_emit.c
@@ -344,10 +344,10 @@ void r300_emit_fs_constant_buffer(struct r300_context* r300,
END_CS;
}
-void r300_emit_fs_constant_rc_state(struct r300_context* r300,
- struct rc_constant_list* constants)
+void r300_emit_fs_rc_constant_state(struct r300_context* r300, unsigned size, void *state)
{
struct r300_fragment_shader *fs = r300_fs(r300);
+ struct rc_constant_list *constants = &fs->shader->code.constants;
unsigned i;
unsigned count = fs->shader->rc_state_count;
unsigned first = fs->shader->externals_count;
@@ -465,10 +465,10 @@ void r500_emit_fs_constant_buffer(struct r300_context* r300,
END_CS;
}
-void r500_emit_fs_constant_rc_state(struct r300_context* r300,
- struct rc_constant_list* constants)
+void r500_emit_fs_rc_constant_state(struct r300_context* r300, unsigned size, void *state)
{
struct r300_fragment_shader *fs = r300_fs(r300);
+ struct rc_constant_list *constants = &fs->shader->code.constants;
unsigned i;
unsigned count = fs->shader->rc_state_count;
unsigned first = fs->shader->externals_count;
@@ -1215,13 +1215,9 @@ void r300_emit_dirty_state(struct r300_context* r300)
if (r300screen->caps.is_r500) {
r500_emit_fs_constant_buffer(r300,
&r300_fs(r300)->shader->code.constants);
- r500_emit_fs_constant_rc_state(r300,
- &r300_fs(r300)->shader->code.constants);
} else {
r300_emit_fs_constant_buffer(r300,
&r300_fs(r300)->shader->code.constants);
- r300_emit_fs_constant_rc_state(r300,
- &r300_fs(r300)->shader->code.constants);
}
r300->dirty_state &= ~R300_NEW_FRAGMENT_SHADER_CONSTANTS;
}