From 5cf0af533e3d8e8b1db8f56297871f4f663f5050 Mon Sep 17 00:00:00 2001 From: Ruiling Song Date: Fri, 6 Jun 2014 14:57:18 +0800 Subject: [PATCH] GBE: Fix a jump issue in int64 to float conversion The the inactive lanes should use 32, so later jump could jump as desired. Signed-off-by: Ruiling Song Reviewed-by: Zhigang Gong --- backend/src/backend/gen_context.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/backend/gen_context.cpp b/backend/src/backend/gen_context.cpp index 69b4907..b1bacc5 100644 --- a/backend/src/backend/gen_context.cpp +++ b/backend/src/backend/gen_context.cpp @@ -833,7 +833,7 @@ namespace gbe GenRegister dst_ud = GenRegister::retype(dst, GEN_TYPE_UD); p->push(); p->curr.noMask = 1; - p->MOV(exp, GenRegister::immud(-1)); // make sure the inactive lane is 1 when check ALL8H/ALL16H condition latter. + p->MOV(exp, GenRegister::immud(32)); // make sure the inactive lane is 1 when check ALL8H/ALL16H condition latter. p->pop(); p->FBH(exp, high); p->ADD(exp, GenRegister::negate(exp), GenRegister::immud(31)); //exp = 32 when high == 0 -- 2.7.4