From: Nicolai Hähnle Date: Fri, 22 Apr 2016 21:59:17 +0000 (-0500) Subject: radeonsi: expclear must be disabled on first Z/S clear X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7a215a3e274e7c793ab9c015004f5323cf85a50c;p=mesa.git radeonsi: expclear must be disabled on first Z/S clear The documentation and the HW team say so. Reviewed-by: Marek Olšák --- diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index b87275d8646..6fa5b975d9d 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -497,7 +497,7 @@ static void si_clear(struct pipe_context *ctx, unsigned buffers, if (buffers & PIPE_CLEAR_DEPTH) { /* Need to disable EXPCLEAR temporarily if clearing * to a new value. */ - if (zstex->depth_cleared && zstex->depth_clear_value != depth) { + if (!zstex->depth_cleared || zstex->depth_clear_value != depth) { sctx->db_depth_disable_expclear = true; } @@ -513,7 +513,7 @@ static void si_clear(struct pipe_context *ctx, unsigned buffers, /* Need to disable EXPCLEAR temporarily if clearing * to a new value. */ - if (zstex->stencil_cleared && zstex->stencil_clear_value != stencil) { + if (!zstex->stencil_cleared || zstex->stencil_clear_value != stencil) { sctx->db_stencil_disable_expclear = true; }