是否可以将c代码与llvm bitcode链接?

时间:2012-01-18 17:03:44

标签: llvm jit

我有一个包含一些有用功能的llvm bitcode文件。我想从c代码中调用它。是否可以将此c代码与llvm bitcode链接以生成可执行文件? 或者我必须通过JIT调用该函数。

2 个答案:

答案 0 :(得分:2)

必须使LLVM bitcode可执行以从C调用。您至少有两个选择:

  1. JIT在你打电话之前编译bitcode。
  2. 将bitcode与汇编/链接目标文件和C对象文件。

    1. 可能更容易做到。

答案 1 :(得分:0)

基本上答案是肯定的,假设您没有使用某些未提及的运行时C语言解释器。通常,C必须编译成某种东西,llvm工具为目标处理器提供了两种选择bitcode和汇编语言。 C可以转换为bitcode,并且所有组件都在同一个可执行二进制文件中。从那里,您可以获取所有这些部分,并将它们用于特定目标的汇编语言。