Mesa (master): gallivm: Fix address register swizzle.
Jose Fonseca
jrfonseca at kemper.freedesktop.org
Thu Sep 16 19:21:04 UTC 2010
Module: Mesa
Branch: master
Commit: 3d5b9c1f2d3340259dd0d8765090a5a963074f29
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3d5b9c1f2d3340259dd0d8765090a5a963074f29
Author: José Fonseca <jfonseca at vmware.com>
Date: Thu Sep 16 09:52:20 2010 +0100
gallivm: Fix address register swizzle.
We're actually doing a double swizzling:
indirect_reg->Swizzle[indirect_reg->SwizzleX]
instead of simply
indirect_reg->SwizzleX
---
src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 3 +--
1 files changed, 1 insertions(+), 2 deletions(-)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
index cd5b132..0d8d49b 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
@@ -476,9 +476,8 @@ get_indirect_offsets(struct lp_build_tgsi_soa_context *bld,
const struct tgsi_src_register *indirect_reg)
{
/* always use X component of address register */
- const int x = indirect_reg->SwizzleX;
+ unsigned swizzle = indirect_reg->SwizzleX;
LLVMTypeRef int_vec_type = lp_build_int_vec_type(bld->base.type);
- uint swizzle = tgsi_util_get_src_register_swizzle(indirect_reg, x);
LLVMValueRef vec4 = lp_build_const_int_vec(bld->int_bld.type, 4);
LLVMValueRef addr_vec;
More information about the mesa-commit
mailing list