diff options
author | Jerome Glisse <jglisse@redhat.com> | 2010-12-03 12:20:40 -0500 |
---|---|---|
committer | Jerome Glisse <jglisse@redhat.com> | 2010-12-03 12:45:19 -0500 |
commit | 0b841b0349d7aca218eac4e9d9b7b1406ad71944 (patch) | |
tree | fcee7e5de468b6942a76f27c1f8ea4aeaf04b075 /src/gallium/drivers/r600/r600_state_common.c | |
parent | dbf996f30856c000e18e3700f741d4e92561b4ec (diff) |
r600g: update polygon offset only when rasterizer or zbuffer change
Aim is to build as little state as possible in draw functions.
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Diffstat (limited to 'src/gallium/drivers/r600/r600_state_common.c')
-rw-r--r-- | src/gallium/drivers/r600/r600_state_common.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c index 55bc5d0d22..856f79158c 100644 --- a/src/gallium/drivers/r600/r600_state_common.c +++ b/src/gallium/drivers/r600/r600_state_common.c @@ -58,6 +58,12 @@ void r600_bind_rs_state(struct pipe_context *ctx, void *state) rctx->states[rs->rstate.id] = &rs->rstate; r600_context_pipe_state_set(&rctx->ctx, &rs->rstate); + + if (rctx->family >= CHIP_CEDAR) { + evergreen_polygon_offset_update(rctx); + } else { + r600_polygon_offset_update(rctx); + } } void r600_delete_rs_state(struct pipe_context *ctx, void *state) |