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 <liam at 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20150414/55609c26/attachment.html>