Displaying 3 results from an estimated 3 matches for "2f53f3c7".
2016 Mar 29
0
JIT compiler and calls to existing functions
The option we use is to have a custom memory manager, override the
getPointerToNamedFunction function, and provide the pointer to the
external function at link time. The inttoptr scheme works fairly well,
but it does make for some pretty ugly and sometimes hard to analyze IR.
I recommend leaving everything symbolic until link time if you can.
Philip
On 03/28/2016 06:33 PM, Russell Wallace
2016 Mar 29
2
JIT compiler and calls to existing functions
That seems to work, thanks! The specific code I ended up with to call
int64_t print(int64_t) looks like:
auto f = builder.CreateIntToPtr(
ConstantInt::get(builder.getInt64Ty(), uintptr_t(print)),
PointerType::getUnqual(FunctionType::get(
builder.getInt64Ty(), {builder.getInt64Ty()}, false)));
return builder.CreateCall(f, args);
On Mon, Mar
2016 Mar 29
2
JIT compiler and calls to existing functions
..._______________________
> LLVM Developers mailing listllvm-dev at lists.llvm.orghttp://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160329/2f53f3c7/attachment.html>