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

SCM Repository

[diderot] Diff of /branches/vis15/src/compiler/translate/translate.sml
ViewVC logotype

Diff of /branches/vis15/src/compiler/translate/translate.sml

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

revision 3493, Fri Dec 11 18:29:21 2015 UTC revision 3500, Wed Dec 16 15:01:40 2015 UTC
# Line 102  Line 102 
102              predKill = Array.array(arity, false)              predKill = Array.array(arity, false)
103            }            }
104    
105    (* FIXME: newForeach *)
106    
107    (* record that a path to the top join in the stack has been killed because f DIE or STABILIZE *)    (* record that a path to the top join in the stack has been killed because f DIE or STABILIZE *)
108      fun killPath ((i, JOIN{arity, predKill, ...}) :: _) = (      fun killPath ((i, JOIN{arity, predKill, ...}) :: _) = (
109            arity := !arity - 1;            arity := !arity - 1;
# Line 348  Line 350 
350                        in                        in
351                          cvt (env, IR.CFG.concat (cfg, condCFG), stms)                          cvt (env, IR.CFG.concat (cfg, condCFG), stms)
352                        end                        end
353                      | S.S_Foreach(x, xs, b) => let
354                          val x' = newVar x
355                          val xs' = lookup env xs
356                          val join as JOIN{nd=foreachNd, ...} = newForeach (env, 2)
357                          in
358    ??
359                          end
360                    | S.S_New(strandId, args) => let                    | S.S_New(strandId, args) => let
361                        val nd = IR.Node.mkNEW{                        val nd = IR.Node.mkNEW{
362                                strand = strandId,                                strand = strandId,
# Line 372  Line 381 
381                        in                        in
382                          cvt (env, IR.CFG.appendNode (cfg, nd), stms)                          cvt (env, IR.CFG.appendNode (cfg, nd), stms)
383                        end                        end
384                      | S.S_MapReduce{results, reductions, body, args, source} => ??
385                  (* end case *))                  (* end case *))
386            in            in
387              cvt (env, IR.CFG.empty, stms)              cvt (env, IR.CFG.empty, stms)

Legend:
Removed from v.3493  
changed lines
  Added in v.3500

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