Mesa (master): r600g: enable fast depth clear for array textures and cubemaps
Marek Olšák
mareko at kemper.freedesktop.org
Mon Sep 1 19:24:47 UTC 2014
Module: Mesa
Branch: master
Commit: 0ccc653c707d8eeb793fa261f2bfa60f5ff53792
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0ccc653c707d8eeb793fa261f2bfa60f5ff53792
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Aug 20 14:36:53 2014 +0200
r600g: enable fast depth clear for array textures and cubemaps
I have a piglit test that hits this.
Acked-by: Michel Dänzer <michel.daenzer at amd.com>
---
src/gallium/drivers/r600/r600_blit.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/gallium/drivers/r600/r600_blit.c b/src/gallium/drivers/r600/r600_blit.c
index a3cfdae..0f43839 100644
--- a/src/gallium/drivers/r600/r600_blit.c
+++ b/src/gallium/drivers/r600/r600_blit.c
@@ -429,7 +429,8 @@ static void r600_clear(struct pipe_context *ctx, unsigned buffers,
*/
/* Only use htile for first level */
if (rtex->htile_buffer && !level &&
- util_max_layer(&rtex->resource.b.b, level) == 0) {
+ fb->zsbuf->u.tex.first_layer == 0 &&
+ fb->zsbuf->u.tex.last_layer == util_max_layer(&rtex->resource.b.b, level)) {
if (rtex->depth_clear_value != depth) {
rtex->depth_clear_value = depth;
rctx->db_state.atom.dirty = true;
More information about the mesa-commit
mailing list