[Mesa-dev] [PATCH 21/22] r600g: don't flush depth textures set as colorbuffers

Marek Olšák maraeo at gmail.com
Mon Jul 9 12:15:54 PDT 2012


The only case a depth buffer can be set as a color buffer is when flushing.

That wasn't always the case, but now this code isn't required anymore.
---
 src/gallium/drivers/r600/r600_blit.c |   18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c
index 23e3190..fff48a4 100644
--- a/src/gallium/drivers/r600/r600_blit.c
+++ b/src/gallium/drivers/r600/r600_blit.c
@@ -212,26 +212,8 @@ static void r600_flush_depth_textures(struct r600_context *rctx,
 
 void r600_flush_all_depth_textures(struct r600_context *rctx)
 {
-	unsigned i;
-
 	r600_flush_depth_textures(rctx, &rctx->ps_samplers);
 	r600_flush_depth_textures(rctx, &rctx->vs_samplers);
-
-	/* also check CB here */
-	for (i = 0; i < rctx->framebuffer.nr_cbufs; i++) {
-		struct r600_resource_texture *tex;
-		struct pipe_surface *surf = rctx->framebuffer.cbufs[i];
-		tex = (struct r600_resource_texture *)surf->texture;
-
-		if (!tex->is_depth || tex->is_flushing_texture)
-			continue;
-
-		r600_blit_uncompress_depth(&rctx->context, tex, NULL,
-					   surf->u.tex.level,
-					   surf->u.tex.level,
-					   surf->u.tex.first_layer,
-					   surf->u.tex.last_layer);
-	}
 }
 
 static void r600_clear(struct pipe_context *ctx, unsigned buffers,
-- 
1.7.9.5



More information about the mesa-dev mailing list