From: Marek Olšák Date: Sun, 8 Jul 2012 01:10:37 +0000 (+0200) Subject: r600g: don't flush depth textures set as colorbuffers X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fe1fd675565231b49d3ac53d0b4bec39d8bc6781;p=mesa.git r600g: don't flush depth textures set as colorbuffers 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. Reviewed-by: Alex Deucher --- diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c index 23e3190b744..fff48a41adf 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,