LLVM:如何在运行时访问JIT API&编辑自己?

时间:2011-03-14 13:32:39

标签: jit llvm

您能否建议是否可以从正在执行的程序中访问LLVM JIT API?我的目标是能够动态地操作(添加/更新/删除)类,方法和数据。

最好,我会留在Clang。欢迎任何想法。

1 个答案:

答案 0 :(得分:3)

这似乎很容易。在JIT中,您可以提供任意外部函数与任意地址之间的映射。所以,基本上你只需要在你的IR中定义一些函数进行JIT,将它绑定到外部世界的地址,这将为你制作一个技巧。

特别是http://llvm.org/doxygen/classllvm_1_1ExecutionEngine.html#a805704b52a327cc6b37aebf9cba14169是你应该在这里使用的功能。