Movatterモバイル変換


[0]ホーム

URL:


LLVM: An Infrastructure for Multi-Stage Optimization
Chris Lattner, M.S. Thesis

Abstract:

Modern programming languages and software engineering principles are causingincreasing problems for compiler systems. Traditional approaches, which use a simple compile-link-execute model, are unable to provide adequate applicationperformance under the demands of the new conditions. Traditional approaches tointerprocedural and profile-driven compilation can provide the applicationperformance needed, but require infeasible amounts of compilation time to buildthe application.

This thesis presents LLVM, a design and implementation of a compiler infrastructure which supports a uniquemulti-stage optimization system.This system is designed to support extensive interprocedural and profile-driven optimizations, while being efficient enough for use incommercial compiler systems.

The LLVM virtual instruction set is the glue that holds the system together. Itis a low-level representation, but withhigh-level type information.This provides the benefits of a low-level representation (compactrepresentation, wide variety of available transformations, etc.) as well asproviding high-level information to support aggressive interproceduraloptimizations at link- and post-link time. In particular, this system isdesigned to support optimization in the field, both at run-time and duringotherwise unused idle time on the machine.

This thesis also describes an implementation of this compiler design, the LLVM compiler infrastructure, proving that the design is feasible. The LLVMcompiler infrastructure is a maturing and efficient system, which we show is a good host for a variety of research. More information about LLVM can be foundon its web site at:http://llvm.cs.uiuc.edu/

This thesis supercedes an oldertechnical report.

Published:

"LLVM: An Infrastructure for Multi-Stage Optimization", Chris Lattner.
Masters Thesis, Computer Science Dept., University of Illinois at Urbana-Champaign, Dec. 2002.

Download:

BibTeX Entry:

  @MastersThesis{Lattner:MSThesis02,    author  = {Chris Lattner},    title   = "{LLVM: An Infrastructure for Multi-Stage Optimization}",    school  = "{Computer Science Dept., University of Illinois at Urbana-Champaign}",    year    = {2002},    address = {Urbana, IL},    month   = {Dec},    note    = {{\em See {\tt http://llvm.cs.uiuc.edu}.}}  }

[8]ページ先頭

©2009-2025 Movatter.jp