Professional Documents
Culture Documents
Department of
Electrical Engineering & Computer Science
COP 6621: Compiler Construction
Fall 2013
Syllabus
Instructor: Dr. Damian Dechev
email: dechev@eecs.ucf.edu
Tentative Schedule:
Week 1, Friday, August 23rd :
Blast from the past: Introduction to Compilers; Course Overview
Reading: Ch. 1.1-1.5; 8.4; 8.5; 9.1
Week 2, Friday, August 30th
Data Flow Analysis; Industrial Frameworks; HPC Program Analysis; Course Project Overview
Reading: Ch. 9.2, 9.3
Week 3, Friday, September 6th
Constant Propagation, Loops, Part I by Pierre LaBorde
Constant Propagation, Loops, Part II by Steven Feldman
Special Topic: Wait-free Hash Tables by Pierre LaBorde and Steven Feldman
Reading: Ch. 9.4, 9.6
Week 4, Friday, September 13th
Partial Redundancy Elimination by Deli Zhang
Register Allocation by Brendan Lynch
Special Topic: ROSE Compiler Framework and Skeleton Extraction by Deli Zhang
Special Topic: Data Structure Families and Code Generation by Brendan Lynch
Reading: Ch. 9.5, 8.8
Week 5, Friday, September 20th
Instruction Scheduling and Software Pipelining by Bo Kang
Dynamic Compilation by Frank Plochan
Special Topic: COLLECTIVE SPECIFICATION AND VERIFICATION OF BEHAVIOR
MODELS AND OBJECT-ORIENTED IMPLEMENTATIONS by Bo Kang
Special Topic: Using SPIN to Model Check Concurrent Algorithms, using a translation from C
to Promela by Frank Plochan
Reading: Ch. 10
Week 6, Friday, September 27th
Pointer Analysis and BDD in Pointer Analysis by Kyle Martin
Datalog and BDD Examples by Karthik Balasubramanian
Special Topic: Mitigating the Compiler Optimization Phase-Ordering Problem Using Machine
Learning by Kyle Martin
Special Topic: Sketching Concurrent Data Structures by Karthik Balasubramanian
Reading: Ch. 12
Week 7, Friday, October 4th
Parallelization and Loop Transforms by Yevgeniy Sher
Inlining by Raquel Cohen
Special Topic: Concurrent Data Representation Synthesis by Yevgeniy Sher
Special Topic: Volatiles Are Miscompiled, and What to Do about It by Raquel Cohen
Reading: Ch. 11.1-11.3, 11.6-11.7.4, 11.9-11.9.6
Week 8, Friday, October 11th
Garbage Collection by Michael Semenuik
Special Topic: Deriving Linearizable Fine-Grained Concurrent Objects by Brendan Lynch
Reading: 7.4 7.8