diff options
author | Corbin Simpson <[email protected]> | 2010-01-10 14:29:32 -0800 |
---|---|---|
committer | Corbin Simpson <[email protected]> | 2010-01-10 23:15:04 -0800 |
commit | 46fafdd455bc1f3ee05c076b3c8c541ecd4132dc (patch) | |
tree | f4594599f9a735876c79d376276691b5db3f43c2 /src/gallium/drivers/r300/r300_state.c | |
parent | d9de848de14da5d1a3c64ee55cc271ab25ce8f59 (diff) |
r300g: Atomize rasterizer.
I want to stab things now.
Diffstat (limited to 'src/gallium/drivers/r300/r300_state.c')
-rw-r--r-- | src/gallium/drivers/r300/r300_state.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c index 288b2149b50..8740a082b98 100644 --- a/src/gallium/drivers/r300/r300_state.c +++ b/src/gallium/drivers/r300/r300_state.c @@ -519,7 +519,8 @@ static void r300_screen(r300->context.screen)->caps->is_r500); /* Don't rely on the order of states being set for the first time. */ - if (!r300->rs_state || !r300->rs_state->rs.scissor) { + /* XXX ( >&) */ + if (!r300->rs_state.state) { r300->dirty_state |= R300_NEW_SCISSOR; } r300->dirty_state |= R300_NEW_FRAMEBUFFERS; @@ -721,9 +722,10 @@ static void r300_bind_rs_state(struct pipe_context* pipe, void* state) draw_set_rasterizer_state(r300->draw, &rs->rs); } - r300->rs_state = rs; + r300->rs_state.state = rs; + r300->rs_state.dirty = TRUE; + /* XXX Clean these up when we move to atom emits */ - r300->dirty_state |= R300_NEW_RASTERIZER; r300->dirty_state |= R300_NEW_RS_BLOCK; r300->dirty_state |= R300_NEW_SCISSOR; r300->dirty_state |= R300_NEW_VIEWPORT; @@ -868,10 +870,7 @@ static void r300_set_scissor_state(struct pipe_context* pipe, r300_set_scissor_regs(state, &r300->scissor_state->scissor, r300_screen(r300->context.screen)->caps->is_r500); - /* Don't rely on the order of states being set for the first time. */ - if (!r300->rs_state || r300->rs_state->rs.scissor) { - r300->dirty_state |= R300_NEW_SCISSOR; - } + r300->dirty_state |= R300_NEW_SCISSOR; } static void r300_set_viewport_state(struct pipe_context* pipe, |