Mesa (master): radeonsi: fix TEX writemask

Christian König deathsimple at kemper.freedesktop.org
Thu Aug 2 10:08:54 UTC 2012


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

Author: Christian König <deathsimple at vodafone.de>
Date:   Wed Aug  1 23:18:14 2012 +0200

radeonsi: fix TEX writemask

Using the writemask in the sampler results in packet
VGPRS. For now just sample all components and let
llvm chose the right one.

Signed-off-by: Christian König <deathsimple at vodafone.de>
Reviewed-by: Michel Dänzer <michel.daenzer at amd.com>

---

 src/gallium/drivers/radeonsi/radeonsi_shader.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/radeonsi_shader.c b/src/gallium/drivers/radeonsi/radeonsi_shader.c
index 522016e..c19a4c2 100644
--- a/src/gallium/drivers/radeonsi/radeonsi_shader.c
+++ b/src/gallium/drivers/radeonsi/radeonsi_shader.c
@@ -519,8 +519,8 @@ static void tex_fetch_args(
 	LLVMValueRef offset;
 
 	/* WriteMask */
-	emit_data->args[0] = lp_build_const_int32(bld_base->base.gallivm,
-				emit_data->inst->Dst[0].Register.WriteMask);
+	/* XXX: should be optimized using emit_data->inst->Dst[0].Register.WriteMask*/
+	emit_data->args[0] = lp_build_const_int32(bld_base->base.gallivm, 0xf);
 
 	/* Coordinates */
 	/* XXX: Not all sample instructions need 4 address arguments. */




More information about the mesa-commit mailing list