Clang 是LLVM的前端,可以用来编译C,C++,ObjectiveC等语言。
Clang命令行工具
driver, preprocessor, complier, static analyzer, assembler
传统的编译器通常分为三个部分,前端(frontEnd),优化器(Optimizer)和后端(backEnd)。
在编译过程中,前端主要负责词法和语法分析,将源代码转化为抽象语法树;
优化器则是在前端的基础上,对得到的中间代码进行优化,使代码更加高效;
后端则是将已经优化的中间代码转化为针对各自平台的机器代码。Clang则是以LLVM为后端的一款高效易用,并且与IDE结合很好的编译前端。
网友评论