[llvm-commits] [llvm] r91626 - in /llvm/trunk: lib/ExecutionEngine/JIT/JIT.cpp lib/ExecutionEngine/JIT/JIT.h lib/ExecutionEngine/JIT/JITEmitter.cpp unittests/ExecutionEngine/JIT/JITTest.cpp
Nick Lewycky
nicholas at mxc.ca
Mon Dec 21 21:44:22 PST 2009
nicolas geoffray wrote:
> Hi Jeffrey,
>
>
> Ah, I see now. You have your own ModuleProvider, and it needs to know
> precisely when the function is actually needed, right? Yeah, it sounds
> like I need to roll back that part of this fix until PR5737 is fixed.
>
>
> Yes, thanks!
>
>
>
> Could you please write some tests for the ways you're using
> ModuleProviders and the other interfaces in LLVM? I keep breaking or
> nearly breaking you, and I'd be much more likely to get this right if
> a test broke when I got it wrong.
>
>
> OK, I'll try to do that as soon as possible.
Hi Nicolas,
While I agree we certainly don't want to break your stuff, I'm not
comfortable with you relying on implementation details of how
ModuleProvider is used. There's no documented restrictions on when
materializeFunction may be called, so relying on it to happen to match
Java (and apparently C#) for the correct operation of your VM seems dubious.
Is it possible for you to detach the Java loading behaviour from the
ModuleProvider at all? If not, are there semantics that we should
guarantee on the MP that are shared across all languages that want
lazy-loading?
Nick
More information about the llvm-commits
mailing list