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/cm/main/cm-boot.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/main/cm-boot.sml

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

revision 399, Thu Aug 26 09:55:09 1999 UTC revision 400, Thu Aug 26 16:23:37 1999 UTC
# Line 38  Line 38 
38        val emptydyn = E.dynamicPart E.emptyEnv        val emptydyn = E.dynamicPart E.emptyEnv
39        val system_values = ref emptydyn        val system_values = ref emptydyn
40    
41          structure Compile =
42              CompileFn (structure MachDepVC = HostMachDepVC)
43    
44        structure Link =        structure Link =
45            LinkFn (structure MachDepVC = HostMachDepVC            LinkFn (structure MachDepVC = HostMachDepVC
46                      val getBFC = Compile.getBFC
47                    val system_values = system_values)                    val system_values = system_values)
48    
       structure Compile =  
           CompileFn (structure MachDepVC = HostMachDepVC)  
   
49        structure AutoLoad = AutoLoadFn        structure AutoLoad = AutoLoadFn
50            (structure C = Compile            (structure C = Compile
51             structure L = Link)             structure L = Link)
# Line 52  Line 53 
53        fun recomp_runner gp g = let        fun recomp_runner gp g = let
54            val { group, ... } = Compile.newTraversal (Link.evict, g)            val { group, ... } = Compile.newTraversal (Link.evict, g)
55        in        in
56            isSome (group gp) before Link.cleanup ()            isSome (group gp) before Link.cleanup gp
57        end        end
58    
59        (* This function combines the actions of "recompile" and "exec".        (* This function combines the actions of "recompile" and "exec".
# Line 71  Line 72 
72                     * that everybody has every conceivable privilege, but at                     * that everybody has every conceivable privilege, but at
73                     * the very least we announce which ones are being made                     * the very least we announce which ones are being made
74                     * use of.) *)                     * use of.) *)
75                    (Link.cleanup ();                    (Link.cleanup gp;
76                     if StringSet.isEmpty rq then ()                     if StringSet.isEmpty rq then ()
77                     else Say.say ("$Execute: required privileges are:\n" ::                     else Say.say ("$Execute: required privileges are:\n" ::
78                       map (fn s => ("  " ^ s ^ "\n")) (StringSet.listItems rq));                       map (fn s => ("  " ^ s ^ "\n")) (StringSet.listItems rq));
# Line 97  Line 98 
98                         val writeBFC = Compile.writeBFC                         val writeBFC = Compile.writeBFC
99                         val sizeBFC = Compile.sizeBFC                         val sizeBFC = Compile.sizeBFC
100                         val getII = Compile.getII                         val getII = Compile.getII
101                         val destroy_state = Link.evict)                         fun destroy_state gp i = (Compile.evict i; Link.evict gp i))
102    
103        (* Access to the stabilization mechanism is integrated into the        (* Access to the stabilization mechanism is integrated into the
104         * parser. I'm not sure if this is the cleanest way, but it works         * parser. I'm not sure if this is the cleanest way, but it works
# Line 256  Line 257 
257                         * been cheating, and if we ever have to try and                         * been cheating, and if we ever have to try and
258                         * fetch assembly.sig or core.sml in a separate                         * fetch assembly.sig or core.sml in a separate
259                         * traversal, it will fail. *)                         * traversal, it will fail. *)
260                        val sbnode = Compile.newSbnodeTraversal (fn _ => ())                        val sbnode = Compile.newSbnodeTraversal ()
261                        fun get n = let                        fun get n = let
262                            val { ii, ctxt } = valOf (sbnode ginfo n)                            val { ii, ctxt } = valOf (sbnode ginfo n)
263                            val { statpid, statenv, symenv, sympid } = ii                            val { statpid, statenv, symenv, sympid } = ii

Legend:
Removed from v.399  
changed lines
  Added in v.400

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