[LLVMdev] sext..to instruction
nicholas at mxc.ca
Mon Oct 6 09:52:24 PDT 2008
Le Anh Quang wrote:
> I have a question about the "sext..to" instruction. In the document, I found
> two examples:
> %x = sext i8 -1 to i16
> It means:
> i8 -1 = 1111 1111 --> 1111 1111 1111 1111 = i16
> how can it determinate, that the i16 value %x positive is (65535)?
i16 65536 = i16 -1. They're both 1111 1111 1111 1111.
> And the second example:
> %y = sext i1 true to i32
> 1 --> 1111 1111 1111 1111 1111 1111 1111 1111
> In this example, %y is -1
> I'm not sure about it, when sext to results a positve/negative value?
Since they're the same bits, it doesn't matter at all until you perform
you I/O, at which time your code makes the decision as to whether the
top bit should be treated as a sign bit or not.
The LangRef should probably be updated, as LLVM's AsmPrinter will never
print i16 65536, preferring to show all values as signed.
> Thank for any advice
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
More information about the llvm-dev