* CIS 756 lab5 by Colin Walters and Isaac Jones * To run this program, type '/usr/local/sml/bin/sml' at the command prompt. You can then type 'CM.make();' in order to compile the program. Then typing Main.compile "filename.tig" will run the compiler on the given tiger program and save the mips assembly output to filename.tig.s. * You should see some information about temporaries being allocated, and then output similar to the following: tigermain10: EXP( ESEQ( EXP( CONST 0), CALL( NAME foo11, TEMP t0, CONST 10, CONST 20))) foo11: EXP( BINOP(PLUS, TEMP t1, TEMP t2)) val it = () : unit The strings like "tigermain10:" are labels, and below them their bodies. Now examine filename.tig.s to see the mips assembly output for the given program. * Bugs: Our compiler seems to generate extra CONST 0 expressions sometimes; they are harmless. Local Variables: mode: outline End: