2015-04-12 60 views
0

我有程序HelloWorld.c無法讀取使用對應於所述HelloWorld.bc LLVM IR LLVM-DIS

#include <stdio.h> 

int main() { 
printf("hello world\n"); 
return 0; 
} 

它是使用命令編譯爲位碼helloWorld.bc

clang -emit-llvm HelloWorld.c -c -o HelloWorld.bc 

爲了要打印對應於HelloWorld.bc的LLVM IR,我嘗試反彙編.bc文件。

llvm-dis HelloWorld.bc 

奇怪的是,最後一個命令沒有輸出到我的終端。我錯在哪裏?

+1

不應該是'llvm-dis HelloWorld.bc'而不是'llvm-dis HelloWorld.c'嗎?而你的命令'clang -emit-llvm -c -o HelloWorld.bc'似乎缺少源文件參數'HelloWorld.c'。無論如何,根據手冊頁,llvm-dis寫入文件「HelloWorld.ll」,而不是stdout;請檢查是否創建了該文件(或任何其他文件)。 –

回答