LLVM编译技术及.pdf
LLVM编译技术
及其ARM生态系统简介
Jiangning Liu
Principle Software Engineer
ARM
1
1
Agenda
LLVM编译器技术的模块和架构
Clang/LLVM与GCC编译器比较
与LLVM有关的ARM生态系统
Q&A
2
2
LLVM 简介
Building block of compiler technology
/
C++ code base
C - Clang
一个新的 语言前端
Support many popular targets. e.g.
X86,ARM,MIPS,SPARC, …
New/Advanced architecture design
Supports JIT and dynamic compilation naturally
高度模块化
Active community involvement
3
3
LLVM编译技术的模块和架构
Middle End Back End
……
IR Tblgen
Optimizations CodeGen
AsmParser
Tools ……
MC
DebugInfo ……
4
4
LLVM的技术亮点(1)
LLVM IR (中间语言)
三种表示形式
In memory representation - C++ data structures
Bitcode - Binary (.bc)
Human readable form - Text file (.ll)
可以在命令行上独立调用中端优化
clan