Lecture: Wednesday and Friday, 2:30-3:45 in Olsen 415
Read assignment in ps format
here, or in pdf format
here.
Project files are here.
Documentation for SPIM may be found online: James Larus's
Assemblers, Linkers, and the SPIM simulator (pdf).
This is Appendix A of Hennessy & Patterson's
Computer Organization and Design: The Hardware/Software
Interface, published by Morgan Kaufman. It includes
documentation on the MIPS R2000, its assembly code, and the SPIM
simulator.
A briefer version of SPIM documentation is available in
pdf
or
ps
format, and a slightly revised version is available in
html
format.
Read assignment in ps format here, or in pdf format here. Project files are here.
Read assignment in ps format here, or in pdf format here. Project files are here.
Read assignment in ps format here, or in pdf format here. Project files are here. The actual description of the SPiglet subset of the Piglet language and the simplification process is here, or in pdf format here. The document from Project 3 on the input and output formats of the ast program may be useful in understanding piglet.cg: See below.
Read the project description in ps format here, or in pdf format here. Project files are here. The document "Minijava Code Patterns in Piglet" by Nigel Horspool is the best reference on the Piglet language. Get a copy here, or in pdf format here. Other references on Piglet are the original description from the Minijava project, here. The Minijava project's grammar for Piglet may be useful in addition to piglet.cg. The document from Project 3 on the input and output formats of the ast program may be useful in understanding mj.cg and piglet.cg: See below.
Read the project description in ps format here, or in pdf format here. You will also need a copy of the typing rules for Minijava: here, or in pdf format here; and a copy of instructions for understanding the input and outputs of the ast program: here, or in pdf format here.
Read the project description in ps format here, or in pdf format here. Rules are the same as for the lexical analyzer art of the project (below).
Read the project description, rules, and background in ps format here, or in pdf format here. Template for lexer and support code are available here. Testing on programs in the JavaPrograms directory should yield the results in the Project1/results directory.
You may develop code using any C compiler that you like, but check that the code using gcc -pedantic -Wall before turning it in.