Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] View of /branches/charisee/src/compiler/tree-il/tString.sml
ViewVC logotype

View of /branches/charisee/src/compiler/tree-il/tString.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2632 - (download) (annotate)
Fri May 23 18:57:58 2014 UTC (6 years, 8 months ago) by jhr
File size: 1141 byte(s)
  various changes
(*This function transitions low-il operators to tree-il operators *)
structure tString= struct
local


    structure DstOp = TreeOps
    structure DstTy = TreeILTypes
    structure T = TreeIL
    structure Var = T.Var
in


    fun q m=Int.toString(m)

    fun toStringEx (T.E_LoadVec(tyNew, tyOrig, arg, offset)) =
          String.concat["LDVec<", q tyNew ,":",q  tyOrig, ">", "(", toStringEx arg, ",", toStringEx offset, ")"]
      | toStringEx (T.E_mkVec(tyNew, tyOrig,pieces,args)) =let
        val a=String.concatWith "," (List.map toStringEx args)
        in
                String.concat["mkVec:",q tyNew,"|",
                q tyOrig,"[", DstTy.toString pieces ,"]\n\t",a]
        end
      | toStringEx (T.E_Op(rator, args)) =
        String.concat[DstOp.toString rator,"(", String.concatWith"," (List.map toStringEx args),")"]
      | toStringEx (T.E_Cons(ty, args)) =
        String.concat ["Cons:", DstTy.toString ty, "(",String.concatWith"," (List.map toStringEx args),")"]
      | toStringEx (T.E_State x) = "State"
      | toStringEx (T.E_Var x) = Var.name x
      | toStringEx (T.E_Lit lit) = Literal.toString lit


end;
end

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0