In this assignment, you will add support for variables to the intermediate language.
In MemoryManagement.scala, complete the implementation of:
variableToOffset
in the Chunk
classload
and store
in the Chunk
classinitialize
in the Chunk
classallocate
in the Stack
objectpop
in the Stack
objectIn Transformations.scala, complete the implementation of:
eliminateVarAccessesA3
allocateFrameOnStack
Read and understand the methods after
allocateFrameOnStack
up to compilerA3
. Try
compiling small programs with compilerA3
and running
them.