[Beignet] [PATCH 1/2] support 64bit-integer shifting
Xing, Homer
homer.xing at intel.com
Wed Aug 7 01:10:45 PDT 2013
"MOV_INT64" in this patch is converting short int32 to long int64, maybe its name should be "CONVERT_INT64". As you see, in this patch, I also add converting code. I will do the code renaming.
From: zhigang gong [mailto:zhigang.gong at gmail.com]
Sent: Wednesday, August 7, 2013 4:04 PM
To: Xing, Homer
Cc: beignet at lists.freedesktop.org
Subject: Re: [Beignet] [PATCH 1/2] support 64bit-integer shifting
Homer,
One quick comment for this patch, please see the following change:
@@ -2169,6 +2247,8 @@ namespace gbe
} else if (dst.isdf()) {
ir::Register r = sel.reg(ir::RegisterFamily::FAMILY_QWORD);
sel.MOV_DF(dst, src, sel.selReg(r));
+ } else if (dst.isint64()) {
+ sel.MOV_INT64(dst, src);
} else
sel.MOV(dst, src);
return true;
Here, what we want to do is to convert a different data type to int64 type.
But according to your previous patch, MOV_INT64 is used to move two
int64 type registers, right? So I think it may not be correct, and you may
need to add a new instruction to handle similar CVT instruction as MOV_DF
or you can extent MOV_DF to support int64 too. Any idea?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/beignet/attachments/20130807/8f2eaa3e/attachment.html>
More information about the Beignet
mailing list