Mesa (master): r300-gallium: Emit invariant state, no matter what.

Corbin Simpson csimpson at kemper.freedesktop.org
Tue Mar 17 20:14:27 UTC 2009


Module: Mesa
Branch: master
Commit: f822ac0fff2521b5e43c79df2e4802b5688faa3c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f822ac0fff2521b5e43c79df2e4802b5688faa3c

Author: Corbin Simpson <MostAwesomeDude at gmail.com>
Date:   Tue Mar 17 13:10:41 2009 -0700

r300-gallium: Emit invariant state, no matter what.

It's called "invariant" for a reason. :3

---

 src/gallium/drivers/r300/r300_context.c |    1 +
 src/gallium/drivers/r300/r300_flush.c   |    1 +
 src/gallium/drivers/r300/r300_surface.c |    2 --
 3 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c
index df7f85b..5797de7 100644
--- a/src/gallium/drivers/r300/r300_context.c
+++ b/src/gallium/drivers/r300/r300_context.c
@@ -138,6 +138,7 @@ struct pipe_context* r300_create_context(struct pipe_screen* screen,
 
     r300_init_state_functions(r300);
 
+    r300_emit_invariant_state(r300);
     r300->dirty_state = R300_NEW_KITCHEN_SINK;
     r300->dirty_hw++;
 
diff --git a/src/gallium/drivers/r300/r300_flush.c b/src/gallium/drivers/r300/r300_flush.c
index 3766f0a..20ca690 100644
--- a/src/gallium/drivers/r300/r300_flush.c
+++ b/src/gallium/drivers/r300/r300_flush.c
@@ -31,6 +31,7 @@ static void r300_flush(struct pipe_context* pipe,
 
     if (r300->dirty_hw) {
         FLUSH_CS;
+        r300_emit_invariant_state(r300);
         r300->dirty_state = R300_NEW_KITCHEN_SINK;
         r300->dirty_hw = 0;
     }
diff --git a/src/gallium/drivers/r300/r300_surface.c b/src/gallium/drivers/r300/r300_surface.c
index db7cc02..f825fad 100644
--- a/src/gallium/drivers/r300/r300_surface.c
+++ b/src/gallium/drivers/r300/r300_surface.c
@@ -53,8 +53,6 @@ static void r300_surface_fill(struct pipe_context* pipe,
         return;
     }
 
-    r300_emit_invariant_state(r300);
-
     r300_emit_blend_state(r300, &blend_clear_state);
     r300_emit_blend_color_state(r300, &blend_color_clear_state);
     r300_emit_dsa_state(r300, &dsa_clear_state);




More information about the mesa-commit mailing list