ISD::ZERO_EXTEND / SIGN_EXTEND of sub-vectors
Friedman, Eli via llvm-commits
llvm-commits at lists.llvm.org
Tue Jan 24 10:27:29 PST 2017
On 1/23/2017 11:47 PM, Jonas Paulsson wrote:
>>
> Thanks Eli - that seemed to do the trick! :-)
>
> I just added a few lines to convert the node to SIGN/ZERO
> _EXTEND_VECTOR_INREG - see attachment.
>
> I am thinking that the WidenVT should be legal, and since it seems
> GetWidenedVector() is supposed to always return a legal vector, I have
> neither added a check for legality of InOp. All regression tests pass.
Better to use "DAG.getSignExtendVectorInReg(..." rather than
"DAG.getNode(ISD::SIGN_EXTEND_VECTOR_INREG, ...", probably. (You might
also be hiding some problems; it looks like the assertions which verify
the input and output types are in getSignExtendVectorInReg rather than
getNode.)
Are you sure "InOp" is the right input to the operation?
SIGN_EXTEND_VECTOR_INREG expects that the input and the output are the
same size, but you aren't doing anything to ensure that.
-Eli
--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170124/f56792c5/attachment.html>
More information about the llvm-commits
mailing list