[LLVMdev] x86: inline an LLVM IR function?
Mikael Lyngvig
mikael at lyngvig.org
Sun Dec 1 11:06:22 PST 2013
Thank you!
-- Mikael
2013/12/1 Joey Gouly <joel.gouly at gmail.com>
> You should use "opt" with -inline, or -O2/3 to optimise this.
> llc only runs backend optimisations.
>
>
>
> On 1 December 2013 18:51, Mikael Lyngvig <mikael at lyngvig.org> wrote:
>
>> Sorry for what may possibly be a rather stupid question, but how on earth
>> do you make LLC inline a function? I've got this code:
>>
>> attributes 0 = { alwaysinline nounwind }
>>
>> define internal i32 @lambda(i32 %a, i32 %x) #0 {
>> %1 = add i32 %a, %x
>> ret i32 %1
>> }
>>
>> define i32 @foo(i32 %a) nounwind {
>> %1 = call i32 @lambda(i32 %a, i32 10)
>> ret i32 %1
>> }
>>
>> And no matter what I do, the function @lambda ends up being called with a call instruction. I've tried with -O2, -O3, and with and without the alwaysinline attribute.
>>
>> How do I get LLC or Clang to inline the above @lambda function?
>>
>> Thanks in advance!
>>
>>
>> -- Mikael
>>
>>
>>
>> _______________________________________________
>> LLVM Developers mailing list
>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131201/81face6d/attachment.html>
More information about the llvm-dev
mailing list