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

SCM Repository

[diderot] Diff of /branches/lamont_dev/src/compiler/IL/translate-fn.sml
ViewVC logotype

Diff of /branches/lamont_dev/src/compiler/IL/translate-fn.sml

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

revision 1867, Mon May 7 14:43:11 2012 UTC revision 1868, Fri May 11 03:17:42 2012 UTC
# Line 105  Line 105 
105                                in                                in
106                                  nd                                  nd
107                                end                                end
108                            | SrcIL.FOREACH{cond,stmBranch,...} => let                            | SrcIL.FOREACH{cond,phis,stmBranch,succ,...} => let
109                                  fun cvtPhi (x, xs) = let
110                                        val x = rename env x
111                                        val xs = List.map (rename env) xs
112                                        in
113                                          DstIL.Var.setBinding (x, DstIL.VB_PHI xs);
114                                          (x, xs)
115                                        end
116                                val nd = newNd(DstNd.mkFOREACH{                                val nd = newNd(DstNd.mkFOREACH{
117                                  cond = rename env cond,                                  cond = rename env cond,
118                        phis = List.map cvtPhi (!phis),
119                                  stmBranch = DstNd.dummy                                  stmBranch = DstNd.dummy
120                                 })                                 })
121                                 val stmB = trans (!stmBranch)                                 val stmB = trans (!stmBranch)
122                                 val _ = (DstNd.setStmBranch(nd,stmB); DstNd.setPred(stmB,nd))                                 val _ = (DstNd.setStmBranch(nd,stmB); DstNd.setPred(stmB,nd))
123                                 in                                 in
124                                    DstNd.addEdge (nd, trans (!succ));
125                               nd                               nd
126                                end                                end
127                            | SrcIL.COM{text, succ, ...} => let                            | SrcIL.COM{text, succ, ...} => let

Legend:
Removed from v.1867  
changed lines
  Added in v.1868

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