最近有人告訴我如何將C函數編譯爲LLVM字節碼,然後如何將LLVM字節碼轉換爲x86 ASM。作爲一個常規的GNU/gcc用戶,我對此有一些疑問。輕描淡寫地說。試圖抓住C字節碼...... GNU/gcc可以生成像Clang/LLVM這樣的C字節碼嗎?
GNU/gcc是否也會編譯爲字節碼? 可以嗎?我的印象是gcc直接編譯成ASM。如果沒有,有沒有辦法像使用clang命令一樣查看字節碼中介?
~$ clang ~/prog_name.c -S -emit-llvm -o -
< ==將顯示prog_name.c的字節碼。
此外,我發現字節碼是拜占庭式的。相反,它使彙編語言看起來像輕讀。換句話說:我不知道它在說什麼。
有沒有人有任何建議或引用模糊地解密字節碼給出的信息?目前我與實際的ASM進行比較和對比,所以說這很慢是一種恭維。或許這一切都很滑稽,但我覺得突破這一點非常具有挑戰性。
http://llvm.org/releases/1.3/docs/CommandGuide/html/llvmgcc.html – 2013-03-18 23:26:36
而對於LLVM語言本身的文檔:http://llvm.org/docs/LangRef.html – 2013-03-18 23:27:46
@RobertHarvey看起來比http://llvm.org/docs/LangRef.html更有幫助......謝謝 – d0rmLife 2013-03-18 23:29:26