2016-07-07 61 views

回答

2

您需要添加函數foo的聲明,在其中你調用它的LL文件,然後像往常一樣轉換鏈接LL文件生成可執行

llvm-link a.ll b.ll -o a.out 

例如 a.ll

declare i32 @foo(i32) 

define i32 @main() { 
    start: 
    %0 = call i32 @foo(i32 0) 
    ret i32 %0 
} 

b.ll

define i32 @foo(i32) { 
    start: 
    ret i32 %0 
} 
+0

非常感謝。但是,如果我在a.ll中有函數foo2(),它使用b.ll中的foo(),我可以使用C++ API parseIRFile來提取foo2()函數,並使其在C++代碼中運行?如果是這樣,怎麼樣?謝謝。 –