CS380C Course Schedule Spring 2006

Date Day Lecture Topic Readings Handouts Due
Foundations
Jan 18 Wed 1 Introduction   Syllabus  
Jan 23 Mon 2 Undergrad Compilers in a Day   Assignment 1  
Jan 25 Wed 3 Control Flow Analysis Binary Translation    
Jan 30 Mon 4 Data Flow Analysis   Projects  
Feb 1 Wed 5 Generalizing Dataflow Analysis   Assignment 2 Assignment 1
Feb 6 Mon 6 Lattice Theoretic Foundation for DFA DFA Handout    
Feb 8 Wed 7 Static Single Assignment form      
Feb 13 Mon 8 Reuse Optimizations     Assignment 2
Feb 15 Wed 9 Reuse Optimizations II   Assignment 3  
Feb 20 Mon 10 Introduction to Alias Analysis      
Interprocedural Analysis
Feb 22 Wed 11 Intro to Interprocedural Analysis Pointer Analysis Overview    
Feb 27 Mon 12 Flow-Insensitive Pointer Analysis      
Mar 1 Wed 13 Context-Sensitive Pointer Analysis      
Mar 6 Mon 14 Adaptive Pointer Analysis      
Modern Uses
Mar 8 Wed 15 Domain-Specific Analysis      
Mar 13 Mon   Spring Break
Mar 15 Wed   Spring Break
Mar 20 Mon 16 Program Slicing      
Mar 22 Wed 17 Optimizing OO languages Adaptive Optimization    
Mar 27 Mon 18 Code and Data reorganization      
Mar 29 Wed 19 Field Analysis      
Traditional Uses
Apr 3 Mon 20 Register Allocation      
Apr 5 Wed 21 More Register Allocation SSA-Based Register Allocation Background for reading  
Apr 10 Mon 22 Instruction Scheduling      
Apr 12 Wed 23 No class      
Apr 17 Mon 24 Dynamic Optimizations      
Apr 19 Wed 25 More Dynamic Optimizations      
Apr 24 Mon 26 Speculation and Predication   Dynamo paper  
Apr 26 Wed 27 Locality and Parallelism      
May 1 Mon 28 Loop Transformations      
May 3 Wed 29 Conclusions      

lin@cs.utexas.edu
Last modified: May 3, 2006