From 65b32b21cf3a68e565977e8431d3eb4b9965007d Mon Sep 17 00:00:00 2001 From: Yang Su Date: Sat, 17 Dec 2011 02:23:29 -0500 Subject: [PATCH] styling changes --- RegisterAllocation/mipsgen.sml | 47 ++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/RegisterAllocation/mipsgen.sml b/RegisterAllocation/mipsgen.sml index 5af9a80..3c1d886 100644 --- a/RegisterAllocation/mipsgen.sml +++ b/RegisterAllocation/mipsgen.sml @@ -77,29 +77,35 @@ struct (* JUMP *) | munchStm(T.CJUMP(oper, T.CONST i, e1, lab1, lab2)) = - emit(A.OPER{assem=((operToJump (oper)) ^ " `s0," ^ int i ^ "," ^ Symbol.name(lab1) ^ "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), - src=[munchExp e1], dst=[], jump=SOME([lab1,lab2])}) + emit(A.OPER{assem=((operToJump (oper)) ^ " `s0," ^ int i ^ "," ^ + Symbol.name(lab1) ^ "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), + src=[munchExp e1], dst=[], jump=SOME([lab1,lab2])}) | munchStm(T.CJUMP(oper, e1, T.CONST i, lab1, lab2)) = - emit(A.OPER{assem=((operToJump oper) ^ " `s0," ^ int i ^ "," ^ Symbol.name(lab1) ^ "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), + emit(A.OPER{assem=((operToJump oper) ^ " `s0," ^ int i ^ "," ^ + Symbol.name(lab1) ^ "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), src=[munchExp e1], dst=[], jump=SOME([lab1,lab2])}) | munchStm(T.CJUMP(oper, e1, e2, lab1, lab2)) = - emit(A.OPER{assem=((operToJump oper) ^ " `s0,`s1," ^ Symbol.name(lab1) ^ "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), - src=[munchExp e1, munchExp e2], dst=[], jump=SOME([lab1,lab2])}) + emit(A.OPER{assem=((operToJump oper) ^ " `s0,`s1," ^ Symbol.name(lab1) ^ + "\n" ^ "j " ^ (Symbol.name lab2) ^ "\n"), + src=[munchExp e1, munchExp e2], dst=[], jump=SOME([lab1,lab2])}) | munchStm(T.JUMP(T.NAME(lab), llst)) = - emit(A.OPER{assem = "j " ^ (Symbol.name lab) ^ "\n", - src=[], dst=[], jump=SOME[Temp.namedlabel(Symbol.name lab)]}) + emit(A.OPER{assem = "j " ^ (Symbol.name lab) ^ "\n", + src=[], dst=[], jump=SOME[Temp.namedlabel(Symbol.name lab)]}) | munchStm(T.EXP(T.CALL(T.NAME(lab),args))) = emit(A.OPER{assem="jal " ^ Symbol.name(lab) ^ "\n", src=munchArgs(0,args), dst=F.RA::F.callersaves, jump=NONE}) | munchStm (T.EXP exp) = (munchExp exp; ()) - | munchStm (T.JUMP a) = emit(A.OPER{assem="JUMP : bad munch stm! line 107", src=[], dst=[], jump=NONE}) - | munchStm (T.MOVE a) = emit(A.MOVE{assem="MOVE : bad munch stm! line 107", src=Temp.newtemp (), dst=Temp.newtemp ()}) - (*| munchStm(_) = emit(A.OPER{assem="bad munch stm! line 107", src=[], dst=[], jump=NONE})*) + | munchStm (T.JUMP a) = + emit(A.OPER{assem="JUMP : bad munch stm! line 107", + src=[], dst=[], jump=NONE}) + | munchStm (T.MOVE a) = + emit(A.MOVE{assem="MOVE : bad munch stm! line 107", + src=Temp.newtemp (), dst=Temp.newtemp ()}) and munchArgs(i,[]) = [] | munchArgs(i,eh::et) = @@ -214,18 +220,21 @@ struct | munchExp (T.ESEQ (s, e)) = (munchStm s; munchExp e) | munchExp (T.NAME label) = - result (fn r => - emit (A.OPER {assem="la `d0, " ^ (Symbol.name label) ^ "\n", - dst=[r], src=[], jump=NONE})) + result (fn r => emit (A.OPER + {assem="la `d0, " ^ (Symbol.name label) ^ "\n", + dst=[r], src=[], jump=NONE})) | munchExp (T.CONST n) = - result (fn r => - emit (A.OPER {assem="li `d0, " ^ (int n) ^ "\n", - dst=[r], src=[], jump=NONE})) + result (fn r => emit (A.OPER + {assem="li `d0, " ^ (int n) ^ "\n", + dst=[r], src=[], jump=NONE})) + | munchExp(T.CALL (_,_)) = - ((Printtree.printtree(TextIO.stdOut, stm); TextIO.flushOut TextIO.stdOut;()); - result(fn _ => emit(A.OPER{assem="--bad call\n", src=[], dst=[], jump=NONE}))) - | munchExp(T.BINOP(_, _, _)) = result(fn _ => emit(A.OPER{assem="--bad binop\n", src=[], dst=[], jump=NONE})) + ((Printtree.printtree(TextIO.stdOut, stm); TextIO.flushOut TextIO.stdOut;()); + result(fn _ => emit(A.OPER{assem="--bad call\n", src=[], dst=[], jump=NONE}))) + + | munchExp(T.BINOP(_, _, _)) = + result(fn _ => emit(A.OPER{assem="--bad binop\n", src=[], dst=[], jump=NONE})) (*print IR tree*) (*val _ = (Printtree.printtree(TextIO.stdOut, stm); TextIO.flushOut TextIO.stdOut;())*) in