About¶
Warning
If you are using a released version of LLVM, see the download page to find your documentation.
The LLVM compiler infrastructure supports a wide range of projects, from industrial strength compilers to specialized JIT applications to small research projects.
Similarly, documentation is broken down into several high-level groupings targeted at different audiences:
LLVM Design & Overview¶
Several introductory papers and presentations.
- Introduction to the LLVM Compiler
- Presentation providing a users introduction to LLVM.
- Intro to LLVM
- Book chapter providing a compiler hacker’s introduction to LLVM.
- LLVM: A Compilation Framework for Lifelong Program Analysis & Transformation
- Design overview.
- LLVM: An Infrastructure for Multi-Stage Optimization
- More details (quite old now).
- Publications mentioning LLVM
Documentation¶
Getting Started, How-tos, Developer Guides, and Tutorials.
- User Guides
- For those new to the LLVM system.
- Programming Documentation
- For developers of applications which use LLVM as a library.
- Subsystem Documentation
- For API clients and LLVM developers.
Getting Started/Tutorials¶
- Getting Started with the LLVM System
- Discusses how to get up and running quickly with the LLVM infrastructure. Everything from unpacking and compilation of the distribution to execution of some tools.
- LLVM Tutorial: Table of Contents
- Tutorials about using LLVM. Includes a tutorial about making a custom language with LLVM.
- Getting Started with the LLVM System using Microsoft Visual Studio
- An addendum to the main Getting Started guide for those using Visual Studio on Windows.
Reference¶
LLVM and API reference documentation.
- LLVM Language Reference Manual
- Defines the LLVM intermediate representation and the assembly form of the different nodes.
- LLVM Command Guide
- A reference manual for the LLVM command line utilities (“man” pages for LLVM tools).
- LLVM Testing Infrastructure Guide
- A reference manual for using the LLVM testing infrastructure.
- Architecture & Platform Information for Compiler Writers
- A list of helpful links for compiler writers.
- Machine IR (MIR) Format Reference Manual
- A reference manual for the MIR serialization format, which is used to test LLVM’s code generation passes.
- Doxygen generated documentation
- (classes)