[LLVMdev] lli in interpreter mode and external native libraries

Sarah Thompson thompson at email.arc.nasa.gov
Thu Oct 26 14:20:24 PDT 2006


Chris Lattner wrote:
>
> The JIT has a superset of this functionality.  However, if there is JIT 
> support for the host that you are interested in, you shouldn't have to use 
> the interpreter at all.
>
>   
For interpreting, yes, but model checking is weirder so it's greatly 
beneficial to be able to heavily hack an interpreter.
>> I can't really move to using the JIT entirely because I want to replace
>> the memory model with something that supports backtracking -- this is
>> doable (fairly) straightforwardly with the interpreter, but it would
>> require some very complicated transformations to the code in order to do
>> this within the JIT environment, and it would be quite tricky to avoid
>> subtly breaking the semantics. That kind of approach is possible,
>> probably, but not really something I want to attack right now.
>>     
>
> Ok.  The easiest (in some senses) approach would be to do what you say 
> above.  However, you could probably arrange for a mixed approach to work. 
> in particular, you could have the JIT dynamically compile the FFI code you 
> need by dynamically generating the "unpack from GenericValue" code for 
> each callee you are interested in.
>   
That's what I'm currently trying -- it looks reasonably straightforward.

Sarah



More information about the llvm-dev mailing list