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/opt/recover.sml
ViewVC logotype

Diff of /sml/trunk/src/compiler/FLINT/opt/recover.sml

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

revision 732, Mon Nov 13 21:59:12 2000 UTC revision 733, Fri Nov 17 05:13:45 2000 UTC
# Line 40  Line 40 
40    
41  exception RecoverLty  exception RecoverLty
42  fun recover (fdec, postRep) =  fun recover (fdec, postRep) =
43    let val zz : lty Intmap.intmap = Intmap.new(32, RecoverLty)    let val zz : lty IntHashTable.hash_table =
44        val get = Intmap.map zz            IntHashTable.mkTable(32, RecoverLty)
45        val addv = Intmap.add zz        val get = IntHashTable.lookup zz
46          val addv = IntHashTable.insert zz
47        fun addvs vts = app addv vts        fun addvs vts = app addv vts
48        fun getlty (VAR v) = get v        fun getlty (VAR v) = get v
49          | getlty (INT _ | WORD _) = LT.ltc_int          | getlty (INT _ | WORD _) = LT.ltc_int
# Line 118  Line 119 
119        val atys = map #2 vts        val atys = map #2 vts
120        val rtys = loop e        val rtys = loop e
121        val _ = addv (f, LT.ltc_fkfun(fkind, atys, rtys))        val _ = addv (f, LT.ltc_fkfun(fkind, atys, rtys))
122    in {getLty=getlty, cleanUp=fn () => Intmap.clear zz, addLty=addv}    in {getLty=getlty, cleanUp=fn () => IntHashTable.clear zz, addLty=addv}
123   end (* function recover *)   end (* function recover *)
124    
125  end (* local *)  end (* local *)

Legend:
Removed from v.732  
changed lines
  Added in v.733

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