You might wish to read this thread as well, for some backround on LLVM IR. http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-October/043719.html Summary: LLVM IR is target specific, not portable between different targets. LLVM IR is actually a Compiler IR and not a virtual machine language.