CSE 5239: Compile-Time Program Analysis and Transformations, Autumn 2014

Schedule and Notes


The goal of this course is to introduce the foundations of static (compile-time) program analysis as well as some related program transformations. Static program analyses are traditionally used in compilers for performance optimizations, as well as in software engineering tools for software understanding, evolution, debugging, and testing. The material will be useful for students working in compilers, systems, software engineering, and programming languages.

Topics: Examples of topics that may be discussed include control-flow analysis, dataflow analysis, SSA form, type analysis, pointer/alias analysis, side-effect analysis, and program slicing. These topics apply both to imperative languages and object-oriented languages.

Prerequisites: (1) CSE 6341 or CSE 5343, and (2) basic knowledge of C, C++, or Java. Instruction permission can override these prereqs.

Class number for registration: 35336 (graduate students); 35337 (undergraduate students; please obtain permission from the instructor before registering). This course is 2 credit hours.

Academic Integrity

Committee on Academic Misconduct

Writing and Plagiarism (created by Prof. Eric Fosler-Lussier for the orientation of new CSE graduate students)

Place and Time

Dreese Labs 266, Wednesday and Friday 2:20 pm - 3:15 pm


Atanas (Nasko) Rountev, Email: rountev cse ohio-state edu, Office: DL 685, Tel: 292-7203, Office hours: Wednesday and Friday 1:00 pm - 2:00 pm, or by appointment