[LLVMdev] Memory clean for applications using LLVM for JIT compilation
Frank Henigman
fjhenigman at google.com
Sun Mar 17 14:17:41 PDT 2013
Thanks for the reply, nice to have some validation. I thought of
another approach which might be preferable:
generate relocatable code, use a JITEventListener to grab each
function and copy it to my own memory,
let all the LLVM stuff die normally then use my copy of the code.
However when I call setRelocationModel(Reloc::PIC_) on the engine
builder I get code that seg faults.
The assembly looks plausible at a glance, but I'm not really up to
speed on x86 assembly.
Is PIC supposed to work with JIT on X86-32?
On Sat, Mar 16, 2013 at 11:35 AM, Dirkjan Bussink <d.bussink at gmail.com> wrote:
>
> On Mar 7, 2013, at 20:48 , Frank Henigman <fjhenigman at google.com> wrote:
>
>> I derived a class from JITMemoryManager which delegates everything to
>> an instance made with CreateDefaultMemManager(). ExecutionEngine
>> destroys the wrapper, but I keep the inner instance which did the
>> actual work. Works, but seems a bit ugly. Did you find any other
>> solutions?
>
> I ended up implementing the exact same thing, it feels dirty but it has worked great for us so far.
>
> --
> Dirkjan
More information about the llvm-dev
mailing list