[LLVMdev] [LLVMDev] Is there any way to eliminate zero-extension instruction?

Richard Osborne richard at xmos.com
Wed Jan 20 00:52:31 PST 2010


On 20 Jan 2010, at 07:55, minwook Ahn wrote:

> Dear developers.
> 
> We try to make our own backend of llvm for our target machine.
> 
> Assume that we have the following code in our source code.
> 
> int i = ( a < b );
> 
> The code is translated into
> 
> r0 <- gt r1 r2
> r3 <- and r0 0x1
> 
> We think that r3 is not necessary. Is there any way to eliminate it by just modifying
> 
> our backend?
> 
> Thank you in advance.
> 
> Minwook Ahn

Have you told LLVM the result of setcc operations is 0 or 1? Add the following to the constructor of your ISelLowering class:

setBooleanContents(ZeroOrOneBooleanContent);

-- 
Richard Osborne | XMOS
http://www.xmos.com





More information about the llvm-dev mailing list