SCM Repository
Annotation of /sml/trunk/src/compiler/TopLevel/viscomp/control.sml
Parent Directory
|
Revision Log
Revision 431 - (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 | 261 | 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 : | val indexing = ref false | ||
165 : | val instSigs = ref true | ||
166 : | val quotation = ref false (* controls backquote quotation *) | ||
167 : | val overloadKW = ref false (* controls "overload" as a keyword *) | ||
168 : | |||
169 : | val preserveLvarNames : bool ref = ref false | ||
170 : | monnier | 161 | val saveit = ref true |
171 : | monnier | 16 | val saveLvarNames : bool ref = saveit |
172 : | val saveAbsyn : bool ref = saveit | ||
173 : | val saveLambda : bool ref = saveit | ||
174 : | val saveConvert : bool ref = saveit | ||
175 : | val saveCPSopt : bool ref = saveit | ||
176 : | val saveClosure : bool ref = saveit | ||
177 : | |||
178 : | val lambdaSplitEnable = ref false | ||
179 : | val crossInlineEnable = ref false | ||
180 : | end | ||
181 : | monnier | 251 | |
182 : |
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |