Date | Description |
---|---|
March 31 |
Course introduction slides |
April 2 |
Intro. to parsing; regexps and scanning (Read ch. 1, 2.1-2.4) slides (incomplete; to be updated) |
April 4 | Regexps and Finite Automata (cont.) |
April 7 |
Scanners (concl.); Grammars and ambiguity (start) (3.1-3.2) slides |
April 9 | Grammars and ambiguity (concl.) |
April 11 |
LR (bottom-up) parsing (start) (3.4) slides |
April 14 | LR parsing (concl.) |
April 16 |
LR table construction (3.5) slides |
April 18 | LR conflicts, first/follow |
April 21 |
ASTs & visitors slides |
April 23 |
LL Parsing & recursive descent (3.3) slides |
April 25 |
Intro to Checking (Semantics and Types) (4.1-4.2) slides |
April 28 | Symbol tables and representation of types (no new slides) |
April 30 | Checking (Semantics and Types) wrapup (no new slides) |
May 2 |
IRs slides |
May 5 |
x86-64 (everything you forgot from 351) slides |
May 7 | x86-64 function calls; Code Shape I - basics (start) |
May 12 |
Code shape I (start) slides |
May 14 |
Code Shape I (concl.); Code shape II - objects and dynamic dispatch (start) slides |
May 16 | Code shape II (concl.) |
May 19 |
Opt. overview slides |
May 21 |
project codegen & bootstrap; Dataflow (start) codegen slides, dataflow slides |
May 23 | Dataflow (concl.) |
May 28 |
SSA (start) SSA slides |
May 30 |
Back end overview; instruction selection slides |
June 2 |
Instruction scheduling slides |
June 4 |
Register allocation & course wrap up wrapup |
June 6 |
Guest Lecture from Hal on Garbage Collection slides |