summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_pipe.c
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2012-08-09 17:21:10 +0200
committerMarek Olšák <[email protected]>2012-08-15 19:20:58 +0200
commit0f86915c5322b096b7154b6c84e21288074b775d (patch)
tree29229641e61829bd03d51c782b17be635823c501 /src/gallium/drivers/r600/r600_pipe.c
parent94b634eca0e2bd32d4b5bd92d06d510eae8a5625 (diff)
r600g: implement MSAA color resolve
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.c')
-rw-r--r--src/gallium/drivers/r600/r600_pipe.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.c b/src/gallium/drivers/r600/r600_pipe.c
index f3556dec7a8..3960cd0d48a 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -162,6 +162,9 @@ static void r600_destroy_context(struct pipe_context *context)
if (rctx->custom_dsa_flush) {
rctx->context.delete_depth_stencil_alpha_state(&rctx->context, rctx->custom_dsa_flush);
}
+ if (rctx->custom_blend_resolve) {
+ rctx->context.delete_blend_state(&rctx->context, rctx->custom_blend_resolve);
+ }
util_unreference_framebuffer_state(&rctx->framebuffer);
r600_context_fini(rctx);
@@ -254,6 +257,7 @@ static struct pipe_context *r600_create_context(struct pipe_screen *screen, void
if (evergreen_context_init(rctx))
goto fail;
rctx->custom_dsa_flush = evergreen_create_db_flush_dsa(rctx);
+ rctx->custom_blend_resolve = evergreen_create_resolve_blend(rctx);
rctx->has_vertex_cache = !(rctx->family == CHIP_CEDAR ||
rctx->family == CHIP_PALM ||
rctx->family == CHIP_SUMO ||