M8: Code Generation (Part 2)

In this eighth module, we will continue our discussion on code generation by exploring the ARM64 architecture

Pre-recorded Lectures

The pre-recorded lectures are available here: M7/M8 Videos. You can also find the videos under the “Panopto” tab on the MPCS 51300 canvas site.

The lectures are a series of approx 20-30 minute videos divided into 4 sections:

  • Procedure Call Standard on ARM64

  • Runtime System

  • Writing an ARM Program

  • Register Allocation

The slides/code presented in these videos are accessible in the upstream repository under the m7/resources m8/resources directory. Please reachout to me if you do not have access to this repository.

Supplementary Resources

  • Engineering a Compiler readings:
    • Chapter 13.1 - 13.4

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 November 17th @ 4:00pm-5:20pm

  • Discussion Outline
    • Introduction to ARM code generation

    • Structuring an ARM assembly file

    • Simple Arm Demo

Assignment

Assignments are always due on Wednesday evenings.