Assignment 5

In this assignment, you will add support for procedures and procedure calls to the intermediate language. You will then write some procedures that call each other.

In Transformations.scala, in compilerA5, complete the implementation of:

  1. eliminateCalls
  2. addEntryExit
  3. eliminateVarAccessesA5
  4. frame

In A5.scala, complete the implementation of:

  1. printProcedure
  2. printArray
  3. treeHeight