我前进并通过llvm-gcc -emit-llvm -c
将现有的c代码编译为llvm bitcode。 c程序由四个模块组成,我通过llvm-ld
建立了一个大的bitcode。然后我尝试通过llvm-ld GE.bc GA.bc SD.bc SH.bc -o prog
将这4个bitcode文件合并到一个文件中。
尝试执行bitcode虽然抱怨:
LLVM ERROR:程序使用了无法解析的外部函数'myFunction'!
myFunction 应该在SD.bc中定义并在GA.bc中使用。 但它不能在SD.bc中找到 - llvm-ld会跳过所有未使用的定义吗?
我的操作系统是Linux,我使用llvm 2.6版。
答案 0 :(得分:1)
作为一个注释,llvm是2.9版,3.0接近。你应该真的升级。