[LLVMdev] Make PPC JIT support inline assembly?

Duncan Sands baldrick at free.fr
Thu Mar 24 01:16:54 PDT 2011


Hi Ding-Yong,

> Very few inline assembly are supported for the X86 backend. As I see from
> X86ISelLowering.cpp, only bswap, rorw, xchgl and simple register selections
> (e.g. {=r10}) LLVM JIT can recoginze. But for PPC backend, I am not
> sure why PPC JIT see all inline assembly IRs as an error.

probably because no-one was interested enough to add the analogous logic to the
PPC backend (the PowerPC target does not implement ExpandInlineAsm).

Ciao, Duncan.

> Ding-Yong
> On Thu, Mar 24, 2011 at 2:53 PM, Duncan Sands <baldrick at free.fr
> <mailto:baldrick at free.fr>> wrote:
>
>     Hi 陳韋任,
>
>      >    It seems PPC JIT does not recognize inline assembly.
>      > For example, when I give LLVM IR belows to PPC JIT,
>      >
>      > %0 = tail call i32* asm "", "={r10}"() nounwind ;<i32*>  [#uses=1]
>      >
>      >    it complaints that inline assembly is not a supported
>      > instruction. x86 JIT works fine, however.
>
>     I'm surprised this worked with the x86 JIT - I thought the JIT didn't
>     support any inline assembler on any platform, and that the plan was to
>     solve this with the new MC-JIT, see
>     http://blog.llvm.org/2010/04/intro-to-llvm-mc-project.html
>
>     Ciao, Duncan.
>     _______________________________________________
>     LLVM Developers mailing list
>     LLVMdev at cs.uiuc.edu <mailto:LLVMdev at cs.uiuc.edu> http://llvm.cs.uiuc.edu
>     http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>




More information about the llvm-dev mailing list