<div dir="ltr">+Lang<br><br>Ultravague answer: There are a few different Orc layers for different levels of indirection needed for different levels of substitutability. One way is to indirect every call through global function pointers - so when you want to replace the function you write the new function pointer to the global variable. I forget which layers do which kinds of indirection.<br><br>- Dave</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, May 26, 2016 at 11:49 PM, Theodoros Theododiris via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello,<br>
<br>
I am trying to figure out how to recompile functions multiple times during run-time with ORC JIT<br>
<br>
and I'd appreciate any help/advice.<br>
<br>
<br>
My use case is t he following: every time a function of interest (annotated) is called, profiling data<br>
<br>
are gathered. Given enough data the function is recompiled using different optimizations. This happens<br>
<br>
repeatedly until the "best" optimization parameters are found.<br>
<br>
<br>
A similar question was asked before and a solution was suggested:<br>
<br>
<a href="http://lists.llvm.org/pipermail/llvm-dev/2015-July/088665.html" rel="noreferrer" target="_blank">http://lists.llvm.org/pipermail/llvm-dev/2015-July/088665.html</a><br>
<br>
<br>
What I am trying to figure out is how the function pointer can be updated to point to the newly<br>
<br>
compiled version.<br>
<br>
<br>
Thanks,<br>
<br>
Theodor<br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div><br></div>