Mesa (13.0): radeonsi: fix 64-bit loads from LDS

Emil Velikov evelikov at kemper.freedesktop.org
Mon Oct 24 11:24:42 UTC 2016


Module: Mesa
Branch: 13.0
Commit: 039d1e6f11c69dfe5d380e1cf568ab579507ef07
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=039d1e6f11c69dfe5d380e1cf568ab579507ef07

Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date:   Tue Oct 18 18:40:38 2016 +0200

radeonsi: fix 64-bit loads from LDS

Fixes spec/arb_tessellation_shader/execution/dvec[23]-vs-tcs-tes, among
others.

Cc: "12.0 13.0" <mesa-stable at lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Reviewed-by: Marek Olšák <marek.olsak at amd.com>
(cherry picked from commit 4a2dbfff05f7be271c2aa72e783e24b31906db51)

---

 src/gallium/drivers/radeonsi/si_shader.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_shader.c b/src/gallium/drivers/radeonsi/si_shader.c
index 6a42a8f..0ee760f 100644
--- a/src/gallium/drivers/radeonsi/si_shader.c
+++ b/src/gallium/drivers/radeonsi/si_shader.c
@@ -911,7 +911,7 @@ static LLVMValueRef lds_load(struct lp_build_tgsi_context *bld_base,
 	if (tgsi_type_is_64bit(type)) {
 		LLVMValueRef value2;
 		dw_addr = lp_build_add(&bld_base->uint_bld, dw_addr,
-				       lp_build_const_int32(gallivm, swizzle + 1));
+				       lp_build_const_int32(gallivm, 1));
 		value2 = build_indexed_load(ctx, ctx->lds, dw_addr, false);
 		return si_llvm_emit_fetch_64bit(bld_base, type, value, value2);
 	}




More information about the mesa-commit mailing list