Due: Midnight pm, Monday, December 14th by git commit.
(That is, end of Monday / beginning of Tuesday.)
Finish your compiler—do final assembly of all the modules so that you can go all the way from Tiger source to assembler.
This will require you to define a few remaining machine-level bits and pieces of the modules. See chapter 12 of the course text for discussion. At the least, you should include:
Frame.string properly implementedprocEntryExit3 generating the proper cruft
that SPIM expectsprocEntryExit2 updated to work with
your particular code generator and register allocatorReading sysspim.s
(or, if you're feeling ambitious, the output from "gcc -S"
with a gcc that can cross-compile to a MIPS architecture) may be helpful.
To hand in your work, mark your submission commit with git tag "9-final".
Your repo should contain a directory named 9-final,
that contains:
You should submit the following files:
sources.cm