Mesa (master): r600g,radeonsi: disable fast clear if render condition is on

Marek Olšák mareko at kemper.freedesktop.org
Tue Jun 3 11:33:39 UTC 2014


Module: Mesa
Branch: master
Commit: bf701a84eb000910015a3c3ee9860141cde4990d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bf701a84eb000910015a3c3ee9860141cde4990d

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Mon Jun  2 15:45:51 2014 +0200

r600g,radeonsi: disable fast clear if render condition is on

For some reason, CP DMA doesn't follow the predicate bit if I enable it,
so this is the only option.

This fixes piglit: spec/NV_conditional_render/clear

Cc: mesa-stable at lists.freedesktop.org
Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>

---

 src/gallium/drivers/radeon/r600_texture.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gallium/drivers/radeon/r600_texture.c b/src/gallium/drivers/radeon/r600_texture.c
index e30d933..3a37465 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -1235,6 +1235,9 @@ void evergreen_do_fast_color_clear(struct r600_common_context *rctx,
 {
 	int i;
 
+	if (rctx->current_render_cond)
+		return;
+
 	for (i = 0; i < fb->nr_cbufs; i++) {
 		struct r600_texture *tex;
 		unsigned clear_bit = PIPE_CLEAR_COLOR0 << i;




More information about the mesa-commit mailing list