summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300/r300_emit.c
diff options
context:
space:
mode:
authorCorbin Simpson <[email protected]>2010-01-10 11:08:14 -0800
committerCorbin Simpson <[email protected]>2010-01-10 11:17:34 -0800
commit07ea7e6c80ef2bcb69ab12af69d27f7e118bc15a (patch)
treec152f2b9700733913631ab8a9b242af2ef4de77d /src/gallium/drivers/r300/r300_emit.c
parent249374b85346663417fc09e4c1ad3c6fb908067b (diff)
r300g: Atomize DSA.
Also a bit of ztop.
Diffstat (limited to 'src/gallium/drivers/r300/r300_emit.c')
-rw-r--r--src/gallium/drivers/r300/r300_emit.c13
1 files changed, 2 insertions, 11 deletions
diff --git a/src/gallium/drivers/r300/r300_emit.c b/src/gallium/drivers/r300/r300_emit.c
index 1517eed9235..852ac988638 100644
--- a/src/gallium/drivers/r300/r300_emit.c
+++ b/src/gallium/drivers/r300/r300_emit.c
@@ -107,9 +107,9 @@ void r300_emit_clip_state(struct r300_context* r300, void* state)
}
-void r300_emit_dsa_state(struct r300_context* r300,
- struct r300_dsa_state* dsa)
+void r300_emit_dsa_state(struct r300_context* r300, void* state)
{
+ struct r300_dsa_state* dsa = (struct r300_dsa_state*)state;
struct r300_screen* r300screen = r300_screen(r300->context.screen);
CS_LOCALS(r300);
@@ -983,10 +983,6 @@ void r300_emit_dirty_state(struct r300_context* r300)
int i, dirty_tex = 0;
boolean invalid = FALSE;
- if (!(r300->dirty_state)) {
- return;
- }
-
/* Check size of CS. */
/* Make sure we have at least 8*1024 spare dwords. */
/* XXX It would be nice to know the number of dwords we really need to
@@ -1069,11 +1065,6 @@ validate:
}
}
- if (r300->dirty_state & R300_NEW_DSA) {
- r300_emit_dsa_state(r300, r300->dsa_state);
- r300->dirty_state &= ~R300_NEW_DSA;
- }
-
if (r300->dirty_state & R300_NEW_FRAGMENT_SHADER) {
r300_emit_fragment_depth_config(r300, r300->fs);
if (r300screen->caps->is_r500) {