CS 412/413
Introduction to Compilers
Spring 2007

Schedule

 
Lecture
Date
Topic
Avail Due
1
Jan 22
Course Overview    
2 24 Lexical analysis: Regular Expressions    
3 26 Lexical analysis: Finite Automata HW1  
4 29 Lexical analysis: Lexical Analyzers PA1  
5 31 Syntax analysis: Context-Free Grammars    
6 Feb 2 Syntax analysis: Top-Down Parsing     HW1
7 5 Syntax analysis: AST Construction    
8 7 Syntax analysis: Bottom-Up Parsing  HW2 PA1
9 9 Syntax analysis: LR(1) Parsing    
10 12 Syntax analysis: LR(1) Parsing PA2  
11 14 Semantic analysis: Sytax-Directed Definitions    
12 16 Semantic analysis: Symbol Tables    
13 19 Semantic analysis: Types and Type-Checking   HW2
14 21 Semantic analysis: Static Semantics HW3  
15 23 Semantic analysis: Objects     
16 26 Intermediate code: Attribute Grammars    
17 28 Intermediate code: Partitioned Attribute Grammars   PA2
18 Mar 2 Intermediate code: Intermediate Code    
 5  Prelim 1 review
6  Prelim 1. Phillips 213 7:30pm, lectures 1-17, closed book.
19 7 Simple code generation: Intermediate Code PA3
HW3

Do Not Submit.

20 9 Simple code generation: Stack Frames    
21 12 Simple code generation: Generating Pentium Codes    
22 14 Analysis, optimizations: Implementing Objects    
23 16 Analysis, optimizations: Introduction to Optimizations    

Spring Break

24 26 Analysis, optimizations: Control Flow Graphs    
25 28 Analysis, optimizations: Liveness and Copy Propagation    
26 30 Analysis, optimizations: Dataflow Analysis Frameworks    
27 Apr 2 Analysis, optimizations: More Dataflow Analysis   PA3
28 4 Analysis, optimizations: Dataflow Analysis Instances    
  6 Demo of Static Analysis Applications    
29 9 Code generation: Control Flow Analysis    
30 11 Code generation: Loop Optimizations and Pointer Analysis    
31 13 Code generation: Instruction Selection HW4,PA4  
32 16 Advanced topics: More Instruction Selection    
33 18 Advanced topics: Register Allocation    
34 20 Advanced topics: Memory Management   HW4
23 Prelim 2 review    
24 Prelim 2. Phillips 213 7:30pm, lectures 18-34, closed book.
35 25 Advanced topics: Linking and Loading    
36
27
Advanced topics: Advanced Analyses   PA4
Final project demonstration