Is it possible in LLVM to JIT a module and run functions from it, then later on add more functions to the same module and JIT those and run them? I tried MCJIT as well as ORC and in both cases it looks like LLVM intentionally prevents the modification of modules after they are JITed. Is there a simple way to achieve this?
I thought as an alternative to build new modules every time I need to add more functions, but the complexity here is that it won’t be easy for these new functions to call functions that are already JITed in the other module as you have to re-declare those functions in the new module in addition to having to redefine any user types, global vars, etc.
Any simple way to achieve this?