|
EECS 322 - Compiler Construction |
||
|
COURSE TITLE: EECS 322 Compilers PREREQUISITE: EECS 395/495 Programming Languages (DURING 2009-2010 THIS COURSE IS OFFERED IN WINTER QTR ONLY). Exceptions for grad students with suitable background are possible; contact Robby. CATALOG DESCRIPTION: The compiler is the programmer's primary tool. Understanding the compiler is therefore critical for programmers, even if COURSE COORDINATOR: Robby Findler REQUIRED TEXT: SYLLABUS, organized by the week of the quarter:1-2: Intro; lambda-lifting & closure conversion 3-4: Translation to a lower-level intermediate representation (significant simplification the language for subsequent parts of the compiler) 5-6: Optimization (computing the fixed point of a few simple transformations like function inlining and constant propagation) 7: Instruction scheduling (a tree tiling problem, to match the fairly generic lower-level representation to a specific processor's instructions) 8-9: Register allocation (graph coloring) 10: Code walks GRADES: Grades will primarily be based on codewalks at the end of the COURSE OBJECTIVES: Students that complete this course should: |
||