You are on page 1of 3

University of Central Florida

Department of
Electrical Engineering & Computer Science
COP 6621: Compiler Construction
Fall 2013
Syllabus
Instructor: Dr. Damian Dechev

Office tel.: 407-823-2549

email: dechev@eecs.ucf.edu

Lecture meetings: Fri 1:30 PM - 4:20 PM @ HEC 0103


Office hours: TBD @ HEC 0211
Textbook:
Aho, Lam, Sethi and Ullman,
Compilers: Principles, Techniques and Tools, 2/E Addison-Wesley, 2007.
Additional References:
Cooper, Torczon, Engineering a Compiler, 2/E, Morgan Kaufmann, 2011.
Prerequisites: Graduate student standing. Basic compiler class is helpful but not required.
Style of Class Meetings:
The class meetings will not consist of traditional lectures, with the instructor doing most of the
talking and the student doing most of the listening. Rather, meetings will consist of discussions
on each topic and the instructor will help guide the discussion by asking questions.
Grading Policy:

(15%) Project Presentation


(35%) Problem Solving and Topic Presentations
(20%) Mid-term Project Report
(30%) Final Project Report

Letter grades: 90-100: A, 80-89: B, 70-79: C, 50-69: D, Below 50: F.


Note: Any academic dishonesty (including, but not limited to, Cheating, copying and/or
plagiarism) with respect to any exam or assignment in this class will result in a grade of F,
following by the usual procedures for dealing with such behavior, as describe in the UCF Golden
Rule : a handbook for students.

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

Week 9, Friday, October 18th


Static Single Assignment by Jose Sanchez
Special Topic: Concurrent Data Representation Synthesis by Steven Feldman
Reading: Engineering a Compiler, Ch. 9
Week 10, Friday, October 25th
Discussion: TBD
Special Topic/Project Presentation: TBD
Reading: TBD
Week 11, Friday, November 1st
Discussion: TBD
Special Topic/Project Presentation: TBD
Reading: TBD
Week 12, Friday, November 8th
Discussion: TBD
Special Topic/Project Presentation: TBD
Reading: TBD
Week 13, Friday, November 15th
Discussion: TBD
Special Topic/Project Presentation: TBD
Reading: TBD
Week 14, Friday, November 22nd
Discussion: TBD
Special Topic/Project Presentation: TBD
Reading: TBD

You might also like