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

SCM Repository

[diderot] Diff of /branches/vis15/src/compiler/tree-ir/tree-ir.sml
ViewVC logotype

Diff of /branches/vis15/src/compiler/tree-ir/tree-ir.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3750, Wed Apr 13 07:35:23 2016 UTC revision 3757, Fri Apr 15 14:30:25 2016 UTC
# Line 12  Line 12 
12  structure TreeIR =  structure TreeIR =
13    struct    struct
14    
15      structure Op = LowOps      structure Op = TreeOps
16      structure Ty = TreeTypes      structure Ty = TreeTypes
17    
18      datatype program = Program of {      datatype program = Program of {
# Line 55  Line 55 
55        | S_IfThenElse of exp * block * block        | S_IfThenElse of exp * block * block
56        | S_Foreach of var * exp * block        | S_Foreach of var * exp * block
57      (* special Diderot forms *)      (* special Diderot forms *)
58        | S_LoadNrrd of var * Ty.ty * string        | S_LoadNrrd of var * string
59        | S_Input of global_var * string * string option * exp option (* get input *)        | S_Input of global_var * string * string option * exp option (* get input *)
60        | S_InputNrrd of global_var * string * string option * string option (* get image/seq input *)        | S_InputNrrd of global_var * string * string option * string option (* get image/seq input *)
61        | S_New of Atom.atom * exp list   (* new strand creation *)        | S_New of Atom.atom * exp list   (* new strand creation *)
# Line 72  Line 72 
72        | E_Var of var        | E_Var of var
73        | E_Lit of Literal.t        | E_Lit of Literal.t
74        | E_Op of Op.rator * exp list        | E_Op of Op.rator * exp list
75        | E_Cons of Ty.ty * exp list        | E_Cons of exp list * Ty.ty
76        | E_Seq of Ty.ty * exp list        | E_Seq of exp list * Ty.ty
77    
78      and global_var = GV of {      and global_var = GV of {
79          name : string,          (* name (should be unique) *)          name : string,          (* name (should be unique) *)
# Line 129  Line 129 
129          val toString : var -> string          val toString : var -> string
130          val ty : var -> Ty.ty          val ty : var -> Ty.ty
131    
132            structure Set : ORD_SET where type Key.ord_key = var
133          structure Map : ORD_MAP where type Key.ord_key = var          structure Map : ORD_MAP where type Key.ord_key = var
134    
135        end = struct        end = struct
# Line 147  Line 148 
148                fun compare (V{id=a, ...}, V{id=b, ...}) = Stamp.compare(a, b)                fun compare (V{id=a, ...}, V{id=b, ...}) = Stamp.compare(a, b)
149              end              end
150          in          in
151            structure Set = RedBlackSetFn (VarOrd)
152          structure Map = RedBlackMapFn (VarOrd)          structure Map = RedBlackMapFn (VarOrd)
153          end (* local *)          end (* local *)
154        end        end

Legend:
Removed from v.3750  
changed lines
  Added in v.3757

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