[Beignet] [PATCH] GBE: fix a bug in int64 to float conversion.
Yang, Rong R
rong.r.yang at intel.com
Fri Jun 6 00:21:12 PDT 2014
LGTM. Thanks.
-----Original Message-----
From: Beignet [mailto:beignet-bounces at lists.freedesktop.org] On Behalf Of Zhigang Gong
Sent: Friday, June 06, 2014 2:28 PM
To: beignet at lists.freedesktop.org
Cc: Gong, Zhigang
Subject: [Beignet] [PATCH] GBE: fix a bug in int64 to float conversion.
When copy those pure 32bit int to float destination, we should enable the mask. Otherwise, we may destroy the value in inactive lanes.
Signed-off-by: Zhigang Gong <zhigang.gong at intel.com>
---
backend/src/backend/gen_context.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/backend/src/backend/gen_context.cpp b/backend/src/backend/gen_context.cpp
index 7a0a806..69b4907 100644
--- a/backend/src/backend/gen_context.cpp
+++ b/backend/src/backend/gen_context.cpp
@@ -843,6 +843,7 @@ namespace gbe
p->curr.noMask = 1;
p->CMP(GEN_CONDITIONAL_EQ, exp, GenRegister::immud(32)); //high == 0
p->curr.predicate = GEN_PREDICATE_NORMAL;
+ p->curr.noMask = 0;
p->MOV(dst, low);
p->push();
if (simdWidth == 8)
--
1.8.3.2
_______________________________________________
Beignet mailing list
Beignet at lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/beignet
More information about the Beignet
mailing list