15-411 Compiler Design
Schedule

The schedule is subject to change throughout the semester.

Date   Lecture   Reading     Assignment   Lab

Tue Aug 27   Overview   Ch 1, slides      
Thu Aug 29   Instruction Selection   Ch 9      

Tue Sep 3   Register Allocation   Ch 11      
Thu Sep 5   Liveness Analysis   Ch 10      

Tue Sep 10   Dataflow Analysis   Ch 10.1-2, 17.1-4     Asst 1   Tests 1
Thu Sep 12   Static Single Assignment Form   Ch 19      

Tue Sep 17   Lexical Analysis   Ch 2       Lab 1
Thu Sep 19   Context-Free Grammars   Ch 3.1-3.2    

Tue Sep 24   Predictive Parsing   Ch 3.3-3.4       Tests 2
Thu Sep 26   Intermediate Representation   Ch 7-8     Asst 2  

Tue Oct 1   Calling Conventions   Ch 11.3       Lab 2
Thu Oct 3   Static Semantics   Ch 7.2      

Tue Oct 8   Dynamic Semantics   none       Tests 3
Thu Oct 10   Mutable Store   none     Asst 3  

Tue Oct 15   Structs   none       Lab 3
Thu Oct 17   Basic Optimizations   Ch 17.2-17.3      

Tue Oct 22   Loop Optimizations   Ch 18.1-18.3      
Thu Oct 24   Array Bounds Checking   Ch 18.4       Tests 4

Tue Oct 29   Memory Optimizations       Asst 4  
Thu Oct 31   Decompilation         Lab 4

Tue Nov 5   Garbage Collection   Ch 13.1-13.3, 13.7, [Wilson94, Sec 1-2, 6]      
Thu Nov 7   Incremental Collection   Ch 13.5-13.6, [Wilson94, Sec 3.1-3.4]      

Tue Nov 12   Low Level Virtual Machine   slides, LLVM     Asst 5  
Thu Nov 14   Polymorphism        
Sat Nov 16           Lab 5

Mon Nov 18         Paper 5  
Tue Nov 19   Session-Typed Concurrency        
Thu Nov 21   Code Obfuscation        

Tue Nov 26   Project Day (no class)      
Thu Nov 28   Thanksgiving Holiday (no classes)      

Tue Dec 3   JIT Compilation   [Kotzmann08]      
Thu Dec 5   Project Day (no class)         Lab 6

Tue Dec 10   Term Paper Due       Paper 6  


[ Home | Schedule | Labs & Assignments | Resources ]
[ Autolab | Piazza ]

fp@cs
Frank Pfenning