From f822ac0fff2521b5e43c79df2e4802b5688faa3c Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Tue, 17 Mar 2009 13:10:41 -0700 Subject: 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(-) (limited to 'src/gallium/drivers') diff --git a/src/gallium/drivers/r300/r300_context.c b/src/gallium/drivers/r300/r300_context.c index df7f85b937..5797de7dde 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 3766f0a0a7..20ca6905ad 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 db7cc02b18..f825fadfc2 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); -- cgit v1.2.3