Links to notes, labs, etc. on future days are copies of materials from
the previous year to give you an idea what the future will bring. We
will update the notes as the course progresses. Fridays are a figment
of your imagination.
Monday | Tuesday |
Wednesday | Thursday |
sep 1
Labor Day |
sep 2
Registration Day |
sep 3
L1: Course Administration and Overview (old slides) Miniquiz |
sep 4
L2: Regular Expressions, Language Specification by Formal Grammars (old slides) Miniquiz
Assignment: P1, Scanner / Parser Project Scanner / Parser Project
Handouts: Projects overview |
sep 8
R1: Project Information Session
Handouts: Decaf language specification, course tools guide Projects overview (copy). |
sep 9
L3: Regular Expressions, Language Specification by Formal Grammars (old slides) Miniquiz |
sep 10
L4: Bottom-up Parsing (old slides) Miniquiz |
sep 11
L5: Top-down Parsing (old slides) Miniquiz |
sep 15
L6: Top-down Parsing #2 (old slides) Miniquiz |
sep 16
L7: Intermediate Representations (old slides) Miniquiz |
sep 17
L8: Semantic Analysis (old slides) Miniquiz
Project 1 visible to all
|
sep 18 |
sep 22
L9: Unoptimized Code Generation (old slides) Miniquiz
DUE: P1, Scanner / Parser Project
Assignment: P2, Semantic Checker Project |
sep 23
L10: Unoptimized Code Generation #2 (old slides) Miniquiz
DUE: Teams must be finalized |
sep 24
R2: Project Information Session
Handouts: Semantic Checker Project Slides |
sep 25 |
sep 29 |
sep 30
QUIZ #1 Open laptop, no internet. Scope: Lectures so far, projects 1 and 2.
Exam: Questions, Solutions. Practice Exams: 2013 (answers), 2011 (answers), 2010, on OCW. |
oct 1 |
oct 2
ADD DATE TOMORROW
DUE: P2, Semantic Checker Project
Assignment: P3, Code Generator Project
Handouts: x86_64 architecture guide |
oct 6 |
oct 7
R3: Project 3 Information Session
Code Generator Project Slides |
oct 8 |
oct 9
L11: Introduction to Program Analysis (old slides) Miniquiz |
oct 13
Columbus Day |
oct 14
L12: Introduction to Program Analysis (old slides) Miniquiz |
oct 15
L13: Data-flow Analysis (old slides) Miniquiz |
oct 16
DUE: P3, Code Generator Project
L14: Foundations of Data-flow Analysis (old slides) Miniquiz |
oct 20 |
oct 21
Assignment: P4, Data-flow Analysis Project |
oct 22 |
oct 23 |
oct 27
R4: Project Information Session
Data-flow Analysis Project Slides |
oct 28 |
oct 29
L15: Foundations of Data-flow Analysis #2 (old slides) Miniquiz |
oct 30
L16: Foundations of Data-flow Analysis #3 (old slides) Miniquiz |
nov 3
L17: Foundations of Data-flow Analysis #4 (old slides) Miniquiz
DUE: P4, Data-flow Analysis Project |
nov 4
Assignment: P5, Optimizer Project |
nov 5 |
nov 6
QUIZ #2 Questions, Solutions. Open laptop, no internet. Scope: Lectures since quiz 1, project 3. and 4. (Code generation and data-flow analysis) Practice Exams: 2013 (answers), 2011 (answers), 2010, on OCW. |
nov 10
Veteran's day |
nov 11
Veteran's day |
nov 12
L18: Register Allocation (old slides) Miniquiz |
nov 13
L19: Register Allocation #2 (old slides) Miniquiz |
nov 17
L20: Loop Optimizations (old slides) Miniquiz |
nov 18
L21: Introduction to Code Optimization (Instruction Scheduling) (old slides) Miniquiz |
nov 19
DROP DATE
L22: Loop Optimizations: Instruction Scheduling (old slides) Miniquiz |
nov 20 |
nov 24
L23: Parallelization (old slides) Miniquiz |
nov 25 |
nov 26
DUE: P5, Checkpoint |
nov 27
Thanksgiving |
dec 1 |
dec 2
QUIZ #3 Open laptop, no internet. Scope: Register Allocation, Lectures from L18 to L22 (both included), projects 4 and 5. Exam: Questions, Solutions. Practice Exams: 2013 (answers), 2011 (answers), 2010, on OCW. |
dec 3
L24: Parallelization #2 (old slides) Miniquiz |
dec 4
L25: Memory Optimizations (old slides) Miniquiz |
dec 8
DUE: P5, Optimizer Project (11 am) |
dec 9
L26: Compiler Derby! |
dec 10
LAST DAY OF CLASSES |
dec 11 |