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 626 - (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 626 val cpsopt = ref ["zeroexpand", "last_contract"]
47 : monnier 623 (* ["first_contract", "eta", "uncurry", "etasplit",
48 :     "cycle_expand", "eta", "last_contract" ] *)
49 : monnier 220 val rounds = ref 10
50 :     val path = ref false
51 :     val betacontract = ref true
52 :     val eta = ref true
53 :     val selectopt = ref true
54 :     val dropargs = ref true
55 :     val deadvars = ref true
56 :     val flattenargs = ref false
57 :     val extraflatten = ref false
58 :     val switchopt = ref true
59 :     val handlerfold = ref true
60 :     val branchfold = ref false
61 :     val arithopt = ref true
62 :     val betaexpand = ref true
63 :     val unroll = ref true
64 :     val knownfiddle = ref false
65 :     val invariant = ref true
66 :     val targeting = ref 0
67 :     val lambdaprop = ref false
68 :     val newconreps = ref true
69 :     val boxedconstconreps = ref false
70 :     val unroll_recur = ref true
71 :     val sharepath = ref true
72 :     val staticprof = ref false
73 :     val hoistup = ref false
74 :     val hoistdown = ref false
75 :     val recordcopy = ref true
76 :     val recordpath = ref true
77 :     val verbose = ref false
78 :     val debugcps = ref false
79 :     val misc4 = ref 0
80 :     val argrep = ref true
81 :     val bodysize = ref 20
82 :     val reducemore = ref 15
83 :     val alphac = ref true
84 :     val comment = ref false
85 :     val knownGen = ref 0
86 :     val knownClGen = ref 0
87 :     val escapeGen = ref 0
88 :     val calleeGen = ref 0
89 :     val spillGen = ref 0
90 :     val foldconst = ref true
91 :     val etasplit = ref true
92 :     val printit = ref false
93 :     val printsize = ref false
94 :     val scheduling = ref true
95 :     val cse = ref false
96 :     val optafterclosure = ref false
97 :     val uncurry = ref true
98 :     val ifidiom = ref true
99 :     val comparefold = ref true
100 :     val csehoist = ref false
101 :     val rangeopt = ref false
102 :     val icount = ref false
103 :     val debugRep = ref false
104 :     val checklty1 = ref false
105 :     val checklty2 = ref false
106 :     val checklty3 = ref false
107 :     val checkcps1 = ref false
108 :     val checkcps2 = ref false
109 :     val checkcps3 = ref false
110 :     val checkcps = ref false
111 :     val flatfblock = ref true
112 :     val deadup = ref true
113 :     val pollChecks = ref false
114 :     val pollRatioAtoI = ref 1.0
115 : monnier 203
116 : monnier 220 val printFlowgraphStream = ref TextIO.stdOut
117 : monnier 203
118 : monnier 220 val memDisambiguate = ref false
119 :     val controlDependence = ref false
120 :     val flinton = ref true
121 : monnier 122
122 : monnier 220 val compdebugging = ref false
123 :     val mudebugging = ref false
124 :     val eedebugging = ref false
125 :     val insdebugging = ref false
126 :     val smdebugging = ref false
127 :     val emdebugging = ref false
128 :     val esdebugging = ref false
129 :     val etdebugging = ref false
130 :     val ecdebugging = ref false
131 :     val tmdebugging = ref false
132 :     end
133 : monnier 16
134 : monnier 220 structure Control : CONTROL =
135 :     struct
136 :     structure Print : PRINTCONTROL = Control_Print
137 : monnier 16
138 : monnier 220 structure MC : MCCONTROL = Control_MC
139 : monnier 16
140 : monnier 431 structure MLRISC = MLRiscControl
141 : monnier 220
142 :     structure FLINT :> FLINTCONTROL = FLINT_Control
143 :    
144 :     structure CG : CGCONTROL = Control_CG
145 :    
146 : monnier 16 val primaryPrompt = ref "- "
147 :     val secondaryPrompt = ref "= "
148 :     val printWarnings = ref true
149 :     val valueRestrictionLocalWarn = ref false
150 :     val valueRestrictionTopWarn = ref true
151 : monnier 183 val multDefWarn = ref false
152 :     val shareDefError = ref true
153 : monnier 16 val instantiateSigs = ref true
154 :     val debugging = ref false
155 :     val internals = ref false
156 : monnier 109 val lazysml = ref false
157 : monnier 16 val interp = ref false
158 :     (*
159 :     val debugLook = ref false
160 :     val debugCollect = ref false
161 :     val debugBind = ref false
162 :     *)
163 :     val markabsyn = ref true
164 :     val trackExn = ref true
165 : monnier 504 val polyEqWarn = ref true (* warning message when call of polyEqual compiled *)
166 : monnier 16 val indexing = ref false
167 :     val instSigs = ref true
168 :     val quotation = ref false (* controls backquote quotation *)
169 :     val overloadKW = ref false (* controls "overload" as a keyword *)
170 :    
171 :     val preserveLvarNames : bool ref = ref false
172 : monnier 584 val saveit = ref false
173 : monnier 16 val saveLvarNames : bool ref = saveit
174 :     val saveAbsyn : bool ref = saveit
175 :     val saveLambda : bool ref = saveit
176 :     val saveConvert : bool ref = saveit
177 :     val saveCPSopt : bool ref = saveit
178 :     val saveClosure : bool ref = saveit
179 :    
180 :     val lambdaSplitEnable = ref false
181 :     val crossInlineEnable = ref false
182 :     end
183 : monnier 251
184 :    

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