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 3536, Fri Dec 25 18:51:48 2015 UTC revision 3538, Fri Dec 25 21:50:24 2015 UTC
# Line 141  Line 141 
141          name : string,                  (* variable's name *)          name : string,                  (* variable's name *)
142          ty : Ty.ty,                     (* variable's type *)          ty : Ty.ty,                     (* variable's type *)
143          kind : global_kind,             (* the variable kind *)          kind : global_kind,             (* the variable kind *)
144            updated : bool,                 (* true if the global variable is modified in the *)
145                                            (* global-update code *)
146          useCnt : int ref,               (* count of uses *)          useCnt : int ref,               (* count of uses *)
147          props : PropList.holder          props : PropList.holder
148        }        }
# Line 197  Line 199 
199    
200      structure GlobalVar =      structure GlobalVar =
201        struct        struct
202          fun new (kind, name, ty) = GV{          fun new (kind, isUpdated, name, ty) = GV{
203                  id = Stamp.new(),                  id = Stamp.new(),
204                  name = name,                  name = name,
205                  ty = ty,                  ty = ty,
206                  kind = kind,                  kind = kind,
207                    updated = isUpdated,
208                  useCnt = ref 0,                  useCnt = ref 0,
209                  props = PropList.newHolder()                  props = PropList.newHolder()
210                }                }
211          fun name (GV{name, ...}) = name          fun name (GV{name, ...}) = name
212          fun uniqueName (GV{id, name, ...}) = name ^ Stamp.toString id          fun uniqueName (GV{id, name, ...}) = name ^ Stamp.toString id
213          fun kind (GV{kind, ...}) = kind          fun kind (GV{kind, ...}) = kind
214            fun isUpdated (GV{updated, ...}) = updated
215          fun ty (GV{ty, ...}) = ty          fun ty (GV{ty, ...}) = ty
216          fun isInput (GV{kind=InputVar, ...}) = true          fun isInput (GV{kind=InputVar, ...}) = true
217            | isInput _ = false            | isInput _ = false

Legend:
Removed from v.3536  
changed lines
  Added in v.3538

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