一直想寫一篇關於LLVM的文章,想了好久終於下筆了。 同樣從Hello world開始下手
1 | #include <stdio.h> |
編譯成 LLVM的IR中間形式,利用lli
來執行IR Code。
1 | $ clang hello.c -S -emit-llvm -o hello.lli |
刪除hello.lli的Meta data之後,一個Hello world的最小部分掌這個樣子
1 | @.str = private unnamed_addr constant [14 x i8] c"Hello world!\0A\00", align 1 |