ubuntu22 llvm16 安装

636 阅读1分钟

前提

  1. 安装cmake

  2. llvm 下载, github.com/llvm/llvm-p…

编译并安装

编译安装llvm


cd llvm-project

mkdir build

cd build

cmake -G "Unix Makefiles" -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE="Release" ../llvm

make && make install

大约要几个小时

编译安装Clang


cd llvm-project

mkdir clang_build

cd clang_build

cmake -G "Unix Makefiles" -DLLVM_TARGETS_TO_BUILD=X86 -DCMAKE_BUILD_TYPE="Release" ../clang

make && make install

大约要几个小时

案例测试


// demo.c

int test(int a,int b) {

int x = a + b;

int y = a + b;

return x + y;

}

clang demo.c -emit-llvm -S -O -Xclang -disable-llvm-passes -o demo.ll \

&& opt -passes=mem2reg -S demo.ll -debug-pass-manager -stats -o out.ll > /dev/null 2>&1 \

&& cat out.ll

参考资料