X-Git-Url: http://git.joshuawise.com/snipe.git/blobdiff_plain/c2b45b3681553192a462bcdd376ee7a9bf83eef3..4f528370c7d70f4fd271c7ce5eee517284852940:/codegen/blarg.sml diff --git a/codegen/blarg.sml b/codegen/blarg.sml index cf3ea4c..c350b9d 100644 --- a/codegen/blarg.sml +++ b/codegen/blarg.sml @@ -197,11 +197,11 @@ struct val compare = Int.compare end) - fun pp_oper (REG r) = "%" ^ (regname r) + fun pp_oper (REG r) = (regname r) | pp_oper (TEMP t) = (Temp.name t) | pp_oper (STACKARG i) = "arg#"^Int.toString i - fun pp_insn pr (MOVLIT (d, w)) = "\tmov"^pr^" "^(pp_oper d)^", #"^(Word.toString w)^"\n" + fun pp_insn pr (MOVLIT (d, w)) = "\tmov"^pr^" "^(pp_oper d)^", #0x"^(Word.toString w)^"\n" | pp_insn pr (MOVSYM (d, s)) = "\tmov"^pr^" "^(pp_oper d)^", #"^(Symbol.name s)^"\n" | pp_insn pr (MOVLBL (d, l)) = "\tmov"^pr^" "^(pp_oper d)^", #"^(Label.name l)^"\n" | pp_insn pr (LDR (d, s)) = "\tldr"^pr^" "^(pp_oper d)^", ["^(pp_oper s)^"]\n" @@ -218,13 +218,13 @@ struct | pp_insn pr (NOTS (d, s)) = "\tnots"^pr^" "^(pp_oper d)^", "^(pp_oper s)^"\n" | pp_insn pr (PUSH (d, s)) = "\tpush"^pr^" "^(pp_oper d)^", "^(pp_oper s)^"\n" | pp_insn pr (POP (d, s)) = "\tpop"^pr^" "^(pp_oper d)^", "^(pp_oper s)^"\n" - | pp_insn pr (CALL (d, s, n)) = "\tcall"^pr^" "^(pp_oper d)^", "^(pp_oper s)^" # ("^(Int.toString n)^" args)\n" + | pp_insn pr (CALL (d, s, n)) = "\tcall"^pr^" "^(pp_oper d)^", "^(pp_oper s)^" @ ("^(Int.toString n)^" args)\n" | pp_insn pr (SHR (d, s)) = "\tshr"^pr^" "^(pp_oper d)^", "^(pp_oper s)^"\n" | pp_insn pr (SHL (d, s)) = "\tshl"^pr^" "^(pp_oper d)^", "^(pp_oper s)^"\n" (* pretty prints the asm *) fun print (DIRECTIVE(str)) = str ^ "\n" - | print (COMMENT(str)) = "// " ^ str ^ "\n" + | print (COMMENT(str)) = "@ " ^ str ^ "\n" | print (LABEL(l)) = Label.name l ^ ":\n" | print (INSN (pred, insn)) = pp_insn (predname pred) insn | print (LIVEIGN i) = print i