<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><span><br></span></div><div><span><br></span></div><div><span>Another question that is more inmediately relevant to me (since it potentially affects or invalidates my current implementation plan) is about the transitivity of the mappings between</span></div><div><span>symbols of different modules. Let me explain with a minimal example;</span></div><div><span><br></span></div><div><span>say module A implements symbols used in module B, so B is built and when the Call/Invoke instructions are inserted in B for the A symbols, we need to add Global mappings for those symbols</span></div><div><span>in A manually and use those for the instruction creation. (this is my understand of how mappings for calls between modules is done).</span></div><div><span><br></span></div><div><span>So, now i want to JIT code in B that uses A, so i
 need to link both B and A into the fat static runtime jit module. Will the mappings (the A symbols used in B) will be preserved when the modules are link to the runtime JIT module? </span></div><div><span><br></span></div><div><br></div>  <div style="font-size: 12pt; font-family: 'times new roman', 'new york', times, serif; "> <div style="font-size: 12pt; font-family: 'times new roman', 'new york', times, serif; "> <div dir="ltr"> <font size="2" face="Arial"> <hr size="1">  <b><span style="font-weight:bold;">De:</span></b> Duncan Sands <baldrick@free.fr><br> <b><span style="font-weight: bold;">Para:</span></b> llvmdev@cs.uiuc.edu <br> <b><span style="font-weight: bold;">Enviado:</span></b> miércoles, 11 de julio de 2012 9:40<br> <b><span style="font-weight: bold;">Asunto:</span></b> Re: [LLVMdev] dynamic linkage for jit<br> </font> </div> <br>Hi Charllls, I didn't really get it.  Are you saying that you would execute some<br>functions
 using the JIT then, later, those functions will be modified and thus<br>need to be re-jitted?<br><br>Ciao, Duncan.<br><br>On 07/06/12 20:13, Charllls Alquarra wrote:<br>><br>> Sorry if it comes out a bit pushy bumping my own question, but it's been really<br>> difficult to find any info regarding this functionality<br>> in the mailing list archives. Just some emails i've found from people working on<br>> NaCl:<br>><br>> <a href="http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-December/046055.html" target="_blank">http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-December/046055.html</a><br>><br>> is there a branch where this is being work on, or is internal chromium project<br>> so far? Also i'm not sure if this is exactly the same as what i'm looking for,<br>> but it sounds similar enough<br>><br>> *De:* Charllls Alquarra <<a ymailto="mailto:charlesneedspace@yahoo.com.ar"
 href="mailto:charlesneedspace@yahoo.com.ar">charlesneedspace@yahoo.com.ar</a>><br>> *Para:* "<a ymailto="mailto:LLVMdev@cs.uiuc.edu" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>" <><br>> *Enviado:* sábado, 2 de junio de 2012 12:14<br>> *Asunto:* [LLVMdev] dynamic linkage for jit<br>><br>><br>><br>> Hi,<br>><br>> I want to execute functions in a module, this module will have dependencies<br>> resolved in other modules. the modules might change (dynamic compilation<br>> environment) so i would prefer not not link all the dependencies in a single<br>> monolithic module, that is, if it can be avoided<br>><br>> I hope to use Linker::linkModules but this is always destructive. That is ok for<br>> one module depending on a single one, since if that one changed, is no big deal,<br>> but isn't it overkill to rebuild and relink N-1 modules that did not change just<br>> because of a single
 one that changed?<br>><br>> I wonder if there is a non-destructive version of linkModules that can work for<br>> JIT execution.<br>><br>> _______________________________________________<br>> LLVM Developers mailing list<br>> <a ymailto="mailto:LLVMdev@cs.uiuc.edu" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a> <mailto:<a ymailto="mailto:LLVMdev@cs.uiuc.edu" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>> <a href="http://llvm.cs.uiuc.edu/" target="_blank">http://llvm.cs.uiuc.edu</a><br>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>><br>><br>><br>><br>> _______________________________________________<br>> LLVM Developers mailing list<br>> <a ymailto="mailto:LLVMdev@cs.uiuc.edu" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu/"
 target="_blank">http://llvm.cs.uiuc.edu</a><br>> <a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br>><br><br><br>_______________________________________________<br>LLVM Developers mailing list<br><a ymailto="mailto:LLVMdev@cs.uiuc.edu" href="mailto:LLVMdev@cs.uiuc.edu">LLVMdev@cs.uiuc.edu</a>         <a href="http://llvm.cs.uiuc.edu/" target="_blank">http://llvm.cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br><br><br> </div> </div>  </div></body></html>