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 3517, Sat Dec 19 04:39:21 2015 UTC revision 3522, Sun Dec 20 14:20:20 2015 UTC
# Line 131  Line 131 
131                                          (* n'th result of operator in multi-assignment *)                                          (* n'th result of operator in multi-assignment *)
132        | VB_PHI of var option list       (* defined by a phi node *)        | VB_PHI of var option list       (* defined by a phi node *)
133        | VB_PARAM                        (* parameter to a strand *)        | VB_PARAM                        (* parameter to a strand *)
134          | VB_ITER                         (* bound in a foreach loop *)
135    
136    (***** global variables *****)    (***** global variables *****)
137      and global_var = GV of {      and global_var = GV of {
# Line 390  Line 391 
391                  pred = ref dummy, cond = cond,                  pred = ref dummy, cond = cond,
392                  trueBranch = ref dummy, falseBranch = ref dummy                  trueBranch = ref dummy, falseBranch = ref dummy
393                })                })
394          fun mkFOREACH (var, src) = new (FOREACH{          fun mkFOREACH (var, src) = (
395                  Var.setBinding (var, VB_ITER);
396                  new (FOREACH{
397                  pred = ref dummy,                  pred = ref dummy,
398                  phis = ref [], mask = ref [],                  phis = ref [], mask = ref [],
399                  var = var, src = src,                  var = var, src = src,
400                  bodyEntry = ref dummy,                  bodyEntry = ref dummy,
401                  bodyExit = ref dummy,                  bodyExit = ref dummy,
402                  succ = ref dummy                  succ = ref dummy
403                })                  }))
404          fun mkCOM text = new (COM{pred = ref dummy, text = text, succ = ref dummy})          fun mkCOM text = new (COM{pred = ref dummy, text = text, succ = ref dummy})
405          fun mkASSIGN (lhs, rhs) = (          fun mkASSIGN (lhs, rhs) = (
406                Var.setBinding (lhs, VB_RHS rhs);                Var.setBinding (lhs, VB_RHS rhs);
# Line 892  Line 895 
895              String.concatWithMap "," (fn NONE => "_" | SOME x => Var.toString x) xs, ")"              String.concatWithMap "," (fn NONE => "_" | SOME x => Var.toString x) xs, ")"
896            ]            ]
897        | vbToString VB_PARAM = "PARAM"        | vbToString VB_PARAM = "PARAM"
898          | vbToString VB_ITER = "ITER"
899    
900    (* return a string representation of a PHI node *)    (* return a string representation of a PHI node *)
901      fun phiToString (y, xs) = String.concat [      fun phiToString (y, xs) = String.concat [

Legend:
Removed from v.3517  
changed lines
  Added in v.3522

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