Posts LLVM
Post
Cancel

LLVM

LLVM介绍

https://aosabook.org/en/llvm.html

LLVM一开始就被设计为一组具有良好定义接口的可重用库。不像GCC那样很难重用它的parser来进行静态分析或者重构。

LLVM设计最重要的方面是LLVM中间表示(IR).

写一个LLVM Pass

1
2
3
4
5
# 生成.bc
./bin/clang++ -emit-llvm -c hello.cpp -o hello.bc -isystem /usr/include/c++/4.8.5

# 将pass应用于生成的.bc
./bin/opt -enable-new-pm=0 -load ./lib/LLVMHello.so -hello < hello.bc > /dev/null
This post is licensed under CC BY 4.0 by the author.

IPA

二进制优化