Topic | (D = Dragon, A = Appel, TC=Cooper/Torczon) |
||||
Out | Due | ||||
1 | Jan 23 | Course Overview | |||
2 | 25 | Regular Expressions | D 3.3, A 2.1-2 | hw1 | |
3 | 27 | Finite Automata | D 3.6-7, A 2.3-4 | ||
4 | 30 | Lexical Analyzers | D3.8 | pa1 | |
5 | Feb 1 | Grammars | D4.2, A3.1 | ||
6 | 3 | Top-Down Parsing | D4.3-4, A3.2 | hw1 | |
7 | 6 | D4.3-4, A3.2 | hw2 | ||
8 | 8 | Bottom-Up Parsing | D4.5-7, A3.3 | pa2 | pa1 |
9 | 10 | LR, SLR, and LALR | D4.7, A3.3 | ||
10 | 13 | AST Construction | D4.8-9, A3.4, A4 | ||
11 | 15 | Symbol Tables | D7.6, A5.1 | ||
12 | 17 | Types | D6.1-2, A5.2 | ||
13 | 20 | Visitors, Typing Rules | D6.1-2, A4.3,5.2 | hw2 | |
14 | 22 | Objects | A14 | hw3 | |
15 | 24 | Subtyping | |||
16 | 27 | Intermediate Representation | D8.1 | ||
17 | Mar 1 | IR Lowering | D8.4-6 | pa2 | |
18 | 3 | Activation Records | D7.2-4, A6 | pa3 | |
19 | 6 | X86 Code Generation | |||
8 | Prelim 1 review | ||||
9 | Prelim 1. HO 110, 7:30-9:30 pm, closed book. | ||||
20 | 13 | Implementing Objects | hw3 | ||
21 | 15 | Introduction to Optimizations | D10.2 | ||
22 | 17 | Control-Flow Graphs | |||
Spring Break |
|||||
23 | 27 | Live Variable Analysis | D10.6, A10 | ||
24 | 29 | Dataflow Analysis Frameworks | D10.11 | ||
25 | 31 | More Dataflow Frameworks | D10.11 | hw4 | pa3 |
26 | Apr 3 | Standard Compiler Analyses | D10.5-6, A17.2-3 | pa4 | |
27 | 5 | Control Flow Analysis | D10.4, A18.1 | ||
28 | 7 | Loop Optimizations | D10.7, A18.2-3 | ||
29 | 10 | Partial Redundancy Elimination | TC10.3.2 | ||
30 | 12 | Static Single Assignment Form | A19 | ||
31 | 14 | SSA, Instruction Selection | D9.10, A19.3,A9 | ||
32 | 17 | Tiling Algorithms | D9.11, A9.1 | hw4 | |
33 | 19 | Register Allocation | TC13.3, D9.5-6 | pa5 | pa4 |
34 | 21 | Graph Coloring RA | A11, TC13.5 | ||
35 | 24 | Garbage Collection | |||
26 | Prelim 2 review | ||||
27 | Prelim 2. HO 110, 7:30-9:30 pm, closed book. | ||||
36 | May 1 | Linking and loading | |||
37 | 3 | Memory management | |||
38 | 5 | Shape Analysis | pa5 | ||
|