Course Syllabus for

Optimising Compilers
Optimerande kompilatorer

EDAN75F, 7.5 credits

Valid from: Spring 2018
Decided by: Professor Thomas Johansson
Date of establishment: 2017-03-22

General Information

Division: Computer Science (LTH)
Course type: Course given jointly for second and third cycle
The course is also given at second-cycle level with course code: EDA230
Teaching language: Swedish


The purpose of the course is that the students should understand the possibilities and limitations of modern optimising compilers, and thereby understand what they must optimise manually and what the compiler can do automatically.


Knowledge and Understanding

For a passing grade the doctoral student must

Competences and Skills

For a passing grade the doctoral student must

Judgement and Approach

For a passing grade the doctoral student must

Course Contents

Control-flow analysis, data-flow analysis, dependence analysis, alias analysis, redundancy elimination, loop optimisations, procedure optimisations, register allocation, code scheduling, optimisation for object oriented languages, optimisation of the memory hierarchy and vectorisation for processors with SIMD instructions.

Course Literature

Skeppstedt, J.: An Introduction to the Theory of Optimizing Compilers. Skeppberg, 2016. ISBN 9789197794039.

Instruction Details

Types of instruction: Lectures, laboratory exercises

Examination Details

Examination format: Written exam
Grading scale: Failed, pass

Admission Details

Admission requirements: EDAF05 Algorithms, data structures and complexity or EDA027 Algorithms and Data Structures

Course Occasion Information

Contact and Other Information

Course coordinator: Jonas Skeppstedt <>
Web page:

Complete view