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/TopLevel/viscomp/control.sml
ViewVC logotype

Annotation of /sml/trunk/src/compiler/TopLevel/viscomp/control.sml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 604 - (view) (download)

1 : monnier 16 (* COPYRIGHT (c) 1995 AT&T Bell Laboratories *)
2 :     (* control.sml *)
3 :    
4 :    
5 : monnier 220 structure Control_Print : PRINTCONTROL =
6 :     struct
7 :     val printDepth = ref 5
8 :     val printLength = ref 12
9 :     val stringDepth = ref 70
10 :     val printLoop = ref true
11 :     val signatures = ref 2
12 :     val printOpens = ref true
13 :     val out = ref{
14 :     say = fn s => TextIO.output(TextIO.stdOut,s),
15 :     flush = fn () => TextIO.flushOut TextIO.stdOut
16 :     }
17 :     val linewidth = ref 79
18 :     fun say s = #say (!out) s
19 :     fun flush() = #flush (!out) ()
20 :     end
21 : monnier 16
22 : monnier 220 structure Control_MC : MCCONTROL =
23 :     struct
24 :     val printArgs = ref false
25 :     val printRet = ref false
26 : monnier 422 val bindNoVariableWarn = ref false
27 :     val bindNonExhaustiveWarn = ref true
28 : monnier 220 val matchNonExhaustiveWarn = ref true
29 :     val matchNonExhaustiveError = ref false
30 :     (* matchExhaustiveError overrides matchExhaustiveWarn *)
31 :     val matchRedundantWarn = ref true
32 :     val matchRedundantError = ref true
33 :     (* matchRedundantError overrides matchRedundantWarn *)
34 :     val expandResult = ref false
35 :     end
36 : monnier 16
37 : monnier 220 structure Control_CG : CGCONTROL =
38 :     struct
39 :     val tailrecur = ref true
40 :     val recordopt = ref true
41 :     val tail = ref true
42 :     val allocprof = ref false
43 :     val closureprint = ref false
44 :     val closureStrategy = ref 0
45 :     val lambdaopt = ref true
46 : monnier 604 val cpsopt = ref ["first_contract", "eta", "uncurry", "etasplit",
47 :     (* "cycle_expand", *) "eta", "last_contract"]
48 : monnier 220 val rounds = ref 10
49 :     val path = ref false
50 :     val betacontract = ref true
51 :     val eta = ref true
52 :     val selectopt = ref true
53 :     val dropargs = ref true
54 :     val deadvars = ref true
55 :     val flattenargs = ref false
56 :     val extraflatten = ref false
57 :     val switchopt = ref true
58 :     val handlerfold = ref true
59 :     val branchfold = ref false
60 :     val arithopt = ref true
61 :     val betaexpand = ref true
62 :     val unroll = ref true
63 :     val knownfiddle = ref false
64 :     val invariant = ref true
65 :     val targeting = ref 0
66 :     val lambdaprop = ref false
67 :     val newconreps = ref true
68 :     val boxedconstconreps = ref false
69 :     val unroll_recur = ref true
70 :     val sharepath = ref true
71 :     val staticprof = ref false
72 :     val hoistup = ref false
73 :     val hoistdown = ref false
74 :     val recordcopy = ref true
75 :     val recordpath = ref true
76 :     val verbose = ref false
77 :     val debugcps = ref false
78 :     val misc4 = ref 0
79 :     val argrep = ref true
80 :     val bodysize = ref 20
81 :     val reducemore = ref 15
82 :     val alphac = ref true
83 :     val comment = ref false
84 :     val knownGen = ref 0
85 :     val knownClGen = ref 0
86 :     val escapeGen = ref 0
87 :     val calleeGen = ref 0
88 :     val spillGen = ref 0
89 :     val foldconst = ref true
90 :     val etasplit = ref true
91 :     val printit = ref false
92 :     val printsize = ref false
93 :     val scheduling = ref true
94 :     val cse = ref false
95 :     val optafterclosure = ref false
96 :     val uncurry = ref true
97 :     val ifidiom = ref true
98 :     val comparefold = ref true
99 :     val csehoist = ref false
100 :     val rangeopt = ref false
101 :     val icount = ref false
102 :     val debugRep = ref false
103 :     val checklty1 = ref false
104 :     val checklty2 = ref false
105 :     val checklty3 = ref false
106 :     val checkcps1 = ref false
107 :     val checkcps2 = ref false
108 :     val checkcps3 = ref false
109 :     val checkcps = ref false
110 :     val flatfblock = ref true
111 :     val deadup = ref true
112 :     val pollChecks = ref false
113 :     val pollRatioAtoI = ref 1.0
114 : monnier 203
115 : monnier 220 val printFlowgraphStream = ref TextIO.stdOut
116 : monnier 203
117 : monnier 220 val memDisambiguate = ref false
118 :     val controlDependence = ref false
119 :     val flinton = ref true
120 : monnier 122
121 : monnier 220 val compdebugging = ref false
122 :     val mudebugging = ref false
123 :     val eedebugging = ref false
124 :     val insdebugging = ref false
125 :     val smdebugging = ref false
126 :     val emdebugging = ref false
127 :     val esdebugging = ref false
128 :     val etdebugging = ref false
129 :     val ecdebugging = ref false
130 :     val tmdebugging = ref false
131 :     end
132 : monnier 16
133 : monnier 220 structure Control : CONTROL =
134 :     struct
135 :     structure Print : PRINTCONTROL = Control_Print
136 : monnier 16
137 : monnier 220 structure MC : MCCONTROL = Control_MC
138 : monnier 16
139 : monnier 431 structure MLRISC = MLRiscControl
140 : monnier 220
141 :     structure FLINT :> FLINTCONTROL = FLINT_Control
142 :    
143 :     structure CG : CGCONTROL = Control_CG
144 :    
145 : monnier 16 val primaryPrompt = ref "- "
146 :     val secondaryPrompt = ref "= "
147 :     val printWarnings = ref true
148 :     val valueRestrictionLocalWarn = ref false
149 :     val valueRestrictionTopWarn = ref true
150 : monnier 183 val multDefWarn = ref false
151 :     val shareDefError = ref true
152 : monnier 16 val instantiateSigs = ref true
153 :     val debugging = ref false
154 :     val internals = ref false
155 : monnier 109 val lazysml = ref false
156 : monnier 16 val interp = ref false
157 :     (*
158 :     val debugLook = ref false
159 :     val debugCollect = ref false
160 :     val debugBind = ref false
161 :     *)
162 :     val markabsyn = ref true
163 :     val trackExn = ref true
164 : monnier 504 val polyEqWarn = ref true (* warning message when call of polyEqual compiled *)
165 : monnier 16 val indexing = ref false
166 :     val instSigs = ref true
167 :     val quotation = ref false (* controls backquote quotation *)
168 :     val overloadKW = ref false (* controls "overload" as a keyword *)
169 :    
170 :     val preserveLvarNames : bool ref = ref false
171 : monnier 584 val saveit = ref false
172 : monnier 16 val saveLvarNames : bool ref = saveit
173 :     val saveAbsyn : bool ref = saveit
174 :     val saveLambda : bool ref = saveit
175 :     val saveConvert : bool ref = saveit
176 :     val saveCPSopt : bool ref = saveit
177 :     val saveClosure : bool ref = saveit
178 :    
179 :     val lambdaSplitEnable = ref false
180 :     val crossInlineEnable = ref false
181 :     end
182 : monnier 251
183 :    

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