[LLVMdev] x86: inline an LLVM IR function?

Mikael Lyngvig mikael at lyngvig.org
Sun Dec 1 10:51:54 PST 2013


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131201/0787ea68/attachment.html>


More information about the llvm-dev mailing list