【发布时间】:2013-07-08 03:40:18
【问题描述】:
我正在开发基于 llvm 的东西,我想在运行代码时执行 JIT,在代码 jited 中,我在未 jit 的代码中使用了一些函数(生成 jit 代码的程序代码)。但我发现它很昂贵,运行代码需要花费大量时间。有没有办法将原始代码中的函数编译为内部表示,并将其粘贴到 jited 代码中,比如内联函数。 例如: 原代码:
void f(){
//....
}
------------jitted代码
jitted_function(){
f();
}
我想要的是: --------------------jit的代码
inline void f(){
//...
}
jitted_function(){
f();
}
最难的是如果我直接粘贴c++代码,那我还要解析f使用的函数和类,还要粘贴,我不想这样做。
【问题讨论】:
标签: compiler-construction clang llvm libclang