This is an old revision of the document!


The LLVM Compiler Infrastructure

When and where

Time

7 September 2015 - 11 September 2015, 18:00 - 20:00

Place

EG306

Introduction

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

We intend to introduce you to the world of compilers and related tools by using LLVM as a case study.

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

Topics

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

Prerequisites

  • Good knowledge of C/C++

Participants

Ramon Adrian Nastase
Ioana Ciornei
Alexandru Grad
Alexandru Elisei
Cristi Alexandru Vasile
Andreea Daniela Chivu
Mihai Cristian Pirvu
Anca-Maria Pavelescu
Irina Sargu
Horia-Razvan Enescu
Tudor Emil Coman
Tudor Dasco
Marius Ungureanu
Cosmin-Ioan Petrisor
Roxana Gabriela Stan

Organizers

Diana Picuș

Silviu Grigore

sesiuni/llvm.1441094813.txt.gz · Last modified: 2015/09/01 11:06 by freescale