这篇文章是关于Sunny大神在MDCC 2016 的 topic 《把玩编译器,Clang有意思》的学习笔记及实践。
相关链接:视频 PPT

Apple 编译器采用的是 Clang-LLVM 架构,Clang 作为编译器前端,LLVM 作为编译器后端,整体的架构如图:

图0:代码是怎么一步步变成可执行文件的?

编译器架构.png

采用这样的架构是因为,