[Beignet] [PATCH] GBE: fix a bug in int64 to float conversion.
Zhigang Gong
zhigang.gong at intel.com
Thu Jun 5 23:28:23 PDT 2014
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
More information about the Beignet
mailing list