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

SCM Repository

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

Diff of /branches/vis15/src/compiler/cfg-ir/ssa-fn.sml

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

revision 3839, Mon May 9 20:05:59 2016 UTC revision 3840, Mon May 9 20:42:08 2016 UTC
# Line 161  Line 161 
161          name : string,                  (* variable's name *)          name : string,                  (* variable's name *)
162          ty : Ty.ty,                     (* variable's type *)          ty : Ty.ty,                     (* variable's type *)
163          output : bool,                  (* true for output variables *)          output : bool,                  (* true for output variables *)
164            varying : bool,                 (* true for variables that are modified during super steps *)
165            shared : bool,                  (* true for variables that are read by other strands *)
166          props : PropList.holder          props : PropList.holder
167        }        }
168    
# Line 255  Line 257 
257    
258      structure StateVar =      structure StateVar =
259        struct        struct
260          fun new (isOut, name, ty) = SV{          fun new (isOut, name, ty, varying, shared) = SV{
261                  id = Stamp.new(),                  id = Stamp.new(),
262                  name = name,                  name = name,
263                  ty = ty,                  ty = ty,
264                  output = isOut,                  output = isOut,
265                    varying = varying,
266                    shared = shared,
267                  props = PropList.newHolder()                  props = PropList.newHolder()
268                }                }
269          fun name (SV{name, ...}) = name          fun name (SV{name, ...}) = name
270          fun ty (SV{ty, ...}) = ty          fun ty (SV{ty, ...}) = ty
271          fun isOutput (SV{output, ...}) = output          fun isOutput (SV{output, ...}) = output
272            fun isVarying (SV{varying, ...}) = varying
273            fun isShared (SV{shared, ...}) = shared
274          fun same (SV{id=a, ...}, SV{id=b, ...}) = Stamp.same(a, b)          fun same (SV{id=a, ...}, SV{id=b, ...}) = Stamp.same(a, b)
275          fun compare (SV{id=a, ...}, SV{id=b, ...}) = Stamp.compare(a, b)          fun compare (SV{id=a, ...}, SV{id=b, ...}) = Stamp.compare(a, b)
276          fun hash (SV{id, ...}) = Stamp.hash id          fun hash (SV{id, ...}) = Stamp.hash id

Legend:
Removed from v.3839  
changed lines
  Added in v.3840

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