Re: [LLVMdev] refs to LLVM consultants

10 views
Skip to first unread message

Lang Hames

unread,
Apr 14, 2015, 10:28:41 AM4/14/15
to Liam Breck, LLVM Developers Mailing List
Hi Liam,

CC'ing the dev list, since some people there might be interested in this too.

There are two other Orc-based JITs in tree. One is the MCJIT replacement, which you'll find in lib/ExecutionEngine/Orc/OrcMCJITReplacement.*, and the other is OrcLazyJIT, which you'll find in tools/lli/OrcLazyJIT.*. The former is just emulating MCJIT's behaviour, the latter is doing true lazy compilation of bitcode. Both are hooked up to lli, and be accessed using the -jit-kind option.

A useful source of bitcode examples is the regression test suite: test/ExecutionEngine/OrcMCJITReplacement and test/ExecutionEngine/OrcLazy. Each of these has at least a simple "hello.ll" file. OrcLazy is new, so there's not much more than that. OrcMCJITReplacement has duplicates of all of MCJIT's regression tests.

There are no examples that #ifdef out layers. This can be done, but we don't have a use-case for it yet. Do you have one in mind?

Cheers,
Lang.

On Mon, Apr 13, 2015 at 11:12 PM, Liam Breck <li...@networkimprov.net> wrote:
Hi again,

Would it be helpful to have an ORC example in the repo that's not tied to Kaleidoscope?

Something like...
read IR from stdin
find a table of functions
jit table.init()
jit other functions on-call
provide a HelloWorld function for IR to invoke

Perhaps it could demonstrate different approaches to JIT use via #ifdef

Liam
Reply all
Reply to author
Forward
0 new messages