Home My Page Projects Code Snippets Project Openings SML/NJ
 Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

# SCM Repository

[smlnj] Diff of /sml/trunk/src/compiler/FLINT/cpsopt/cpsopt.sml
 [smlnj] / sml / trunk / src / compiler / FLINT / cpsopt / cpsopt.sml

# Diff of /sml/trunk/src/compiler/FLINT/cpsopt/cpsopt.sml

revision 161, Mon Oct 12 03:40:02 1998 UTC revision 162, Tue Oct 27 22:16:21 1998 UTC
# Line 178  Line 178
178         end         end
179
180  in  (if rounds < 0 then function  in  (if rounds < 0 then function
181       else (let val function1 = first_contract function       else let fun apply ("first_contract",f)= first_contract f
182                 val function2 = eta function1                  | apply ("eta",f)           = eta f
183                 val function3 = uncurry function2                  | apply ("uncurry",f)       = uncurry f
184                 val function4 = etasplit function3                  | apply ("etasplit",f)      = etasplit f
185                 val function5 = cycle(rounds, not(!CG.unroll), function4)                  | apply ("last_contract",f) = last_contract f
186                 val function6 = eta function5 (* ZSH added this new phase *)                  | apply ("cycle_expand",f)  = cycle(rounds, not(!CG.unroll), f)
187                 val function7 = last_contract function6                  | apply ("print",f)         = (PPCps.printcps0 f; f)
188              in function7                  | apply (p,f) = (say("\n!! Unknown cps phase '"^p^"' !!\n"); f)
189             end))       in foldl apply function (!CG.cpsopt)
190    (*  val function1 = first_contract function *)
191    (*                 val function2 = eta function1 *)
192    (*                 val function3 = uncurry function2 *)
193    (*                 val function4 = etasplit function3 *)
194    (*                 val function5 = cycle(rounds, not(!CG.unroll), function4) *)
195    (*                 val function6 = eta function5 (* ZSH added this new phase *) *)
196    (*                 val function7 = last_contract function6 *)
197    (*              in function7 *)
198               end)
199      before (debugprint "\n"; debugflush())      before (debugprint "\n"; debugflush())
200
201  end (* fun reduce *)  end (* fun reduce *)

Legend:
 Removed from v.161 changed lines Added in v.162