LLVM 指令集和编译策略
Chris LattnerVikram Adve

摘要

本文介绍了 LLVM 编译器基础架构和指令集,这是一种简单的方法,能够在链接时、运行时以及现场进行复杂的代码转换。这是一种务实的编译方法,尽可能少地干扰程序员和工具,同时仍然保留来自源代码级编译器的广泛高级信息,以备应用程序生命周期的后续阶段使用。我们描述了 LLVM 指令集、LLVM 系统的设计以及其一些关键组件。

出版信息

"LLVM 指令集和编译策略",Chris Lattner & Vikram Adve
技术报告 #UIUCDCS-R-2002-2292,伊利诺伊大学计算机科学系,2002 年 8 月。

更新

自从本文发表以来,LLVM 发生了一项重大变化:文档中描述的 GCC C 前端已从头开始完全重写。新的 C 前端基于主线 GCC CVS 树(即将成为 GCC 3.4),并从 GCC AST 表示而不是无类型的 GCC RTL 表示扩展类型安全的 LLVM 代码。

此更改极大地提高了生成的代码质量和整个系统的稳定性。

下载

BibTeX 项

注意:本文已被 LLVM:多阶段优化的基础架构 取代。如果您想引用关于 LLVM 的论文,请改用它。

@TechReport{LattnerAdve:LLVM:ISCS,
  Author      = "{Chris Lattner and Vikram Adve}",
  Title       = "{The LLVM Instruction Set and Compilation Strategy}",
  Institution = "{CS Dept., Univ. of Illinois at Urbana-Champaign}",
  Number      = {UIUCDCS-R-2002-2292},
  Type        = {Tech. Report},
  Month       = {Aug},
  Year        = {2002}
}