| |||
About this courseTime: Tuesdays and Thursdays 10:00-11:30Place: McConnell 103 Course Outline (html) (pdf) |
PeopleLecturer - Professor Laurie HendrenTeaching assistants
|
||
Assignments and Projects
|
Special Topic Slides
|
||
Week 1: Introduction to OptimizationsSeptember 2016 S M Tu W Th F S 4 5 6 7 8 9 10 * *Reading: Course Outline ((html) , (pdf) ) Aho - Chapters 1 and 2 (for those with no previous compiler course) JIT compilation Brief History of Fortran - first successful HLL and compiler |
Week 2: Intermediate Reps, Control Flow AnalysisSeptember 2016 S M Tu W Th F S 11 12 13 14 15 16 17 * *Intermediate Representations Basic Blocks Control Flow Graphs (CFGs) Control Flow Analysis Loops and Dominators Reading: Muchnick - Chapter 4 - Intermediate Representations Control Flow Analysis Lecture Notes MATLAB and McLAB Intro Lecture Notes |
||
Week 3: Intro to Dataflow AnalysisSeptember 2016 S M Tu W Th F S 18 19 20 12 22 23 24 * GLDataflow Analysis Reading: Appel - Chapter 17 - Dataflow Analysis |
Week 4: More Dataflow AnalysisSeptember 2016 S M Tu W Th F S 25 26 27 28 29 30 31 * * |
||
Week 5: Intro to optimizationsOctober 2016 S M Tu W Th F S 2 3 4 5 6 7 8 * *More on dataflow analyses Intro. to optimizations Early optimizations Reading: Muchnick - Chapter 11 - Introduction to Optimizations Muchnick - Chapter 12 - Early Optimizations |
Week 6: Interprocedural AnalysisOctober 2016 S M Tu W Th F S 9 10 11 12 13 14 15 TM * * Thanksgiving MondayIntroduction to interprocedural analysis and optimizations Reading: Class notes Muchnick - Chapter 15 - Procedure Optimizations |
||
Week 7: Points-to AnalysisOctober 2016 S M Tu W Th F S 16 17 18 19 20 21 22 * *Alias pairs vs points-to relationships Aliases due to call-by-reference Aliases due to the & operator Multi-level pointers Handling Dynamically-allocated memory Using the results of points-to analysis Reading: Context-Sensitive and Flow-SensitiveCont. Sens. Points-to Analysis (.ps)Flow-InsensitiveFast Points-to - POPL 96 (.ps)Fast Points-to - McCAT (.ps) Points-to and SPARK |
Week 8: SSA, GVNOctober 2016 Su Mo Tu We Th Fr Sa 23 24 25 26 27 28 29 * *SSA form SSA numbers Global Value Numbering Reading: Extended SSA Numbering GVN handouts for slides GVN notes for slides Appel - Chapter 19 - SSA Form |
||
Week 9: Register AllocationNovember 2016 Su Mo Tu We Th Fr Sa 1 2 3 4 5 * *Interference Graphs Graph Colouring Register Allocation Simple Instruction Scheduling Reading: Appel - Chapter 11 - Register Allocation |
Week 10: Compiling Dynamic LanguagesNovember 2016 Su Mo Tu We Th Fr Sa 6 7 8 9 10 11 12 * * |
||
Week 11: Special TopicsNovember 2016 Su Mo Tu We Th Fr Sa 13 14 15 16 17 18 19 * * |
Week 12: Project PresentationsNovember 2016 Su Mo Tu We Th Fr Sa 20 21 22 23 24 25 26 * * |
||
Weeks 13 and 14: Project PresentationsNovember/December 2016 Su Mo Tu We Th Fr Sa 27 26 29 30 1 2 3 * * |
Maintained by Laurie J. Hendren.
Last modified Mon Sep 5 12:35:44 EDT 2016.
Compiler research projects: Soot, a Java analysis, optimization and transformation toolkit ---- abc, an AspectJ compiler. ---- McLAB, a compiler and VM toolkit for MATLAB |