This is an old revision of the document!

The LLVM Compiler Infrastructure

When and where

  • Time 14 July 2014 - 18 July 2014, 18:00
  • Place TODO


LLVM is an open-source compiler infrastructure used in many commercial and academic projects . It is written in C++ and it has a very modular design which allows all sorts of tools to be built on top of it.

At the end of this workshop, you will know:

  • How compilers in general work
  • How to write compiler-based tools using LLVM's libraries
  • What kind of optimizations to expect from a compiler
  • How to write better C code


The phases of the compilation process

  • Learn what steps the compiler takes in order to translate high level code into machine code

The general structure of LLVM

  • See how LLVM is organized and why

Compiler-based tools

  • Learn how to use various parts of LLVM in order to implement or support tools such as source-to-source translators or editors with syntax highlighting

C tips & tricks

  • Look at what the compiler generates for various snippets of code and see how different constructs help or hinder the compiler


  • Good knowledge of C/C++

Required software

The required software will be installed on the stations in the lab, but in case you want to bring your laptop you should try to install the following:

  • LLVM (you can use the instructions here - note that you can generate files for several IDEs using CMake)
  • An IDE is recommended <note warning>Note that this list is subject to additions as more content is added to this page</note>


Diana Vasile

Bogdan Dițu

Rene Pălălău


Registration is open until Sunday, 28 June 2014. Please fill in this form.

sesiuni/compiler.1401883591.txt.gz · Last modified: 2014/06/04 15:06 by freescale