M9: Compiler Optimizations & Misc. Topics

In this final module, you we will explore a the optimizer portion of the compiler and discuss how one implements various optimizations in the middle component of the compiler. We will also have a course-recap of all the components that makeup a compiler.

Pre-recorded Lectures

There will be no videos for the final module in compilers. However, Professor Samuels may post additional videos for topics that were able to cover during the synchronous session.

The slides/code presented in the synchronous session are accessible in the upstream repository under the m9/resources directory. Please reachout to me if you do not have access to this repository.

Supplementary Resources

  • Engineering a Compiler readings:
    • Chapter 8.1 - 8.4.1

Synchronous Session (In-person or Remote)

You will find the links to the Zoom sessions on Canvas. As a reminder here are the dates and times for the synchronous session for this module:

  • Dates/Times
    • Section 1: Wednesday December 1st @ 4:00pm-5:20pm

  • Discussion Outline
    • Discuss the benchmarks and grading aspects of the compiler

    • Q&A on Code Generation

    • Introduction to compiler optimizations

    • Local value numbering example

    • Recap of the course (if time permits)

Assignment

Assignments are always due on Wednesday evenings.