如何在LLVM IR中调用C++函数?

3

我对LLVM IR还不熟悉,我有一个LLVM IR源代码并且它使用了一些外部声明的函数。这些函数在一个C++文件中实现。

我的问题是:

如何在LLVM IR中调用这些C++函数?

将C++文件编译成LLVM IR,然后链接在一起,这种方法正确吗?


1
除了@bames53建议的方法,您还可以将C++编译为LLVM IR并在IR级别上进行链接。或者您可以有一个包含这些外部函数的C++程序,JIT LLVM IR并让它们从进程中加载。有许多方法可以解决这个问题,具体取决于您的需求。 - Eli Bendersky
1个回答

6
假设 LLVM IR 声明与您的 C++ 编译器兼容,您应该能够将 C++ 编译为本机目标文件,将 LLVM IR 编译为本机目标文件,并使用本机链接器将它们链接起来。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接