LLVM

概述

参考:

LLVM 是一组 Compiler(编译器) 和 工具链技术,可以用于开发任何编程语言的前端,以及任何指令集架构的后端。LLVM 围绕一种与语言无关的 IR(中间表示) 设计,这种表示作为一种可移植的高级汇编语言,可以通过多次转换进行优化。

LLVM 的架构允许为任何编程语言开发相应的前端,这些前端都将源代码转换成统一的 LLVM IR,然后由 LLVM 的后端将 IR 转换成特定处理器架构的机器码。这种设计实现了前端和后端的解耦,使得一个新语言只需要开发前端即可利用 LLVM 的所有优化和后端支持。