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

SCM Repository

[smlnj] Annotation of /sml/trunk/src/compiler/FLINT/main/control.sml
ViewVC logotype

Annotation of /sml/trunk/src/compiler/FLINT/main/control.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 506 - (view) (download)

1 : monnier 220 (* copyright 1999 YALE FLINT project *)
2 :    
3 :     structure FLINT_Control (* : FLINTCONTROL *) =
4 :     struct
5 :     val print = ref false
6 :     val printPhases = ref false
7 :     val printFctTypes = ref false
8 :     (* `split' should probably be called after `fixfix' since
9 :     * fcontract might eliminate some uncurry wrappers which are
10 :     * locally unused but could be cross-module inlined. *)
11 :     val phases = ref ["lcontract", "specialize",
12 :     "fixfix", "fcontract",
13 : monnier 506 "loopify", "fixfix", (* "split", *) "fcontract",
14 : monnier 259 "specialize", "fcontract",
15 : monnier 220 "wrap", "fcontract",
16 :     (* "names2deb", "typelift", "deb2names", *)
17 :     "reify", "loopify", "fixfix", "fcontract",
18 : monnier 259 "fixfix", "fcontract+eta"]
19 : monnier 220
20 : monnier 259 val inlineThreshold = ref 0 (* 16 *)
21 : monnier 220 val splitThreshold = ref 0
22 :     val unrollThreshold = ref 20
23 :     val maxargs = ref 6
24 :     val dropinvariant = ref true
25 :    
26 :     val specialize = ref true
27 : monnier 259 (* val liftLiterals = ref false *)
28 : monnier 220 val sharewrap = ref true
29 :     val saytappinfo = ref false (* for typelifting statistics *)
30 :    
31 :     (* only for temporary debugging *)
32 :     val misc = ref 0
33 :    
34 :     (* FLINT internal type-checking controls *)
35 : monnier 259 val check = ref false (* fails on MLRISC/*/*RegAlloc.sml *)
36 : monnier 220 val checkDatatypes = ref false (* loops on the new cm.sml *)
37 :     val checkKinds = ref true
38 :    
39 :     (* non-exported crap *)
40 :     val recover : (int -> unit) ref = ref(fn x => ())
41 :     end

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