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/core.cm
ViewVC logotype

Annotation of /sml/trunk/src/compiler/core.cm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 879 - (view) (download)

1 : blume 879 (* core.cm
2 :     *
3 :     * Copyright YALE FLINT PROJECT 1997
4 :     * and
5 :     * (C) 2001 Lucent Technologies, Bell labs
6 :     *
7 :     * This is the machine-independent "core" part of the compiler.
8 :     * Machine-dependent parts are in backend-<arch>.cm.
9 :     *
10 :     * The present file is a group which gets referred to by the actual library
11 :     * file in system/smlnj/viscomp/core.cm.
12 :     *)
13 :     Group (../system/smlnj/viscomp/core.cm)
14 :     signature BACKEND
15 :    
16 :     (* To make it possible to dynamically link in the optimizer,
17 :     * we have to export the following to the library.
18 :     * A.Leung.
19 :     *)
20 :     signature MACHINE_GEN
21 :     signature INVOKE_GC
22 :     signature CPSREGS
23 :    
24 :     structure CPSRegions
25 :     structure SMLGCType
26 :    
27 :     (* To be able to separate machine-dependent parts of viscomp-lib.cm
28 :     * from machine-independent parts, we must also export the
29 :     * the following things.... *)
30 :    
31 :     signature MACH_SPEC
32 :    
33 :     structure DefaultMachSpec
34 :     structure SMLNJConstant
35 :     signature SMLNJ_MLTREE_EXT
36 :     structure SMLNJMLTreeExt
37 :     functor SMLNJMLTreeExtComp
38 :     structure CodeString
39 :    
40 :     functor PseudoOpsBig
41 :     functor PseudoOpsLittle
42 :     functor MachineGen
43 :     functor SpillTable
44 :     functor FLINTComp
45 :     functor BackendFn
46 :    
47 :     functor DummyCCallsFn
48 :     structure ClusterAnnotation
49 :    
50 :     (* stuff that lived (or should have in Frontend (aka GenericVC) *)
51 :     structure Stats
52 :     structure Control
53 :     structure Source
54 :     structure SourceMap
55 :     structure ErrorMsg
56 :     structure Symbol
57 :     structure SymPath
58 :     structure PersStamps
59 :     structure StaticEnv
60 :     structure DynamicEnv
61 :     structure SymbolicEnv
62 :     structure Environment
63 :     structure EnvRef
64 :     structure ModuleId
65 :     structure GenModIdMap
66 :     structure PickMod
67 :     structure UnpickMod
68 :     structure Rehash
69 :     structure PickleSymPid
70 :     structure UnpickleSymPid
71 :     structure PrettyPrint
72 :     structure CompilerPPTable
73 :     structure Ast
74 :     structure Absyn
75 :     structure SmlFile
76 :     structure Binfile
77 :     structure PrintHooks
78 :     structure CompilerVersion
79 :     structure CompInfo
80 :     structure CompileExn
81 :     structure CoreSym
82 :     structure FLINT
83 :    
84 :     (* corresponding signatures *)
85 :     signature STATS
86 :     signature CONTROL
87 :     signature SOURCE
88 :     signature SOURCE_MAP
89 :     signature ERRORMSG
90 :     signature SYMBOL
91 :     signature SYMPATH
92 :     signature PERSSTAMPS
93 :     signature STATICENV
94 :     signature DYNENV
95 :     signature SYMENV
96 :     signature ENVIRONMENT
97 :     signature ENVREF
98 :     signature MODULE_ID
99 :     signature PICKMOD
100 :     signature UNPICKMOD
101 :     signature PRETTYPRINT
102 :     signature AST
103 :     signature ABSYN
104 :     signature SMLFILE
105 :     signature BINFILE
106 :     signature FLINT
107 :     is
108 :    
109 :     TopLevel/batch/batchconfig.sml
110 :     TopLevel/batch/binfile.sig
111 :     TopLevel/batch/binfile.sml
112 :     TopLevel/batch/smlfile.sml
113 :     TopLevel/environ/dynenv.sig
114 :     TopLevel/environ/dynenv.sml
115 :     TopLevel/environ/environ.sig
116 :     TopLevel/environ/environ.sml
117 :     TopLevel/environ/envref.sml
118 :     TopLevel/environ/persmap.sml
119 :     TopLevel/environ/symenv.sig
120 :     TopLevel/environ/symenv.sml
121 :     TopLevel/interact/evalloop.sig
122 :     TopLevel/interact/evalloop.sml
123 :     TopLevel/interact/intconfig.sml
124 :     TopLevel/interact/interact.sig
125 :     TopLevel/interact/interact.sml
126 :     TopLevel/main/compileexn.sml
127 :     TopLevel/main/cconfig.sig
128 :     TopLevel/main/code-generator.sig
129 :     TopLevel/main/code-obj.sig
130 :     TopLevel/main/code-obj.sml
131 :     TopLevel/main/isolate.sml
132 :     TopLevel/main/execute.sml
133 :     TopLevel/main/importtree.sml
134 :     TopLevel/main/compinfo.sml
135 :     TopLevel/main/compile.sig
136 :     TopLevel/main/compile.sml
137 :     TopLevel/main/version.sml
138 :     TopLevel/main/control.sig
139 :     TopLevel/main/control.sml
140 :     TopLevel/main/printhooks.sml
141 :     TopLevel/main/pptable.sml
142 :    
143 :     TopLevel/backend/backend.sig
144 :     TopLevel/backend/backend-fn.sml
145 :    
146 :     Parse/ast/ast.sig
147 :     Parse/ast/ast.sml
148 :     Parse/ast/astutil.sig
149 :     Parse/ast/astutil.sml
150 :     Parse/ast/fixity.sml
151 :     Parse/lex/ml.lex
152 :     Parse/lex/tokentable.sml
153 :     Parse/main/frontend.sig
154 :     Parse/main/frontend.sml
155 :     Parse/parse/ml.grm
156 :    
157 :     Semant/basics/access.sig
158 :     Semant/basics/access.sml
159 :     Semant/basics/conrep.sml
160 :     Semant/basics/env.sig
161 :     Semant/basics/env.sml
162 :     Semant/basics/inlinfo.sml
163 :     Semant/basics/persstamps.sig
164 :     Semant/basics/persstamps.sml
165 :     Semant/basics/stamps.sig
166 :     Semant/basics/stamps.sml
167 :     Semant/basics/stampmap.sml
168 :     Semant/basics/symbol.sig
169 :     Semant/basics/symbol.sml
170 :     Semant/basics/coresym.sml
171 :     Semant/basics/sympaths.sig
172 :     Semant/basics/sympaths.sml
173 :     Semant/elaborate/elabcore.sml
174 :     Semant/elaborate/elabdebug.sml
175 :     Semant/elaborate/specialsyms.sml
176 :     Semant/elaborate/elabmod.sml
177 :     Semant/elaborate/elabsig.sml
178 :     Semant/elaborate/elabtop.sml
179 :     Semant/elaborate/elabtype.sig
180 :     Semant/elaborate/elabtype.sml
181 :     Semant/elaborate/elabutil.sig
182 :     Semant/elaborate/elabutil.sml
183 :     Semant/elaborate/include.sml
184 :     Semant/elaborate/precedence.sml
185 :     Semant/elaborate/tyvarset.sml
186 :     Semant/syntax/absyn.sig
187 :     Semant/syntax/absyn.sml
188 :     Semant/syntax/varcon.sig
189 :     Semant/syntax/varcon.sml
190 :     Semant/modules/entityenv.sig
191 :     Semant/modules/entityenv.sml
192 :     Semant/modules/entpath.sml
193 :     Semant/modules/epcontext.sml
194 :     Semant/modules/evalent.sml
195 :     Semant/modules/expandtycon.sml
196 :     Semant/modules/instantiate.sml
197 :     Semant/modules/moduleid.sml
198 :     Semant/modules/modules.sig
199 :     Semant/modules/modules.sml
200 :     Semant/modules/moduleutil.sig
201 :     Semant/modules/moduleutil.sml
202 :     Semant/modules/sigmatch.sml
203 :    
204 :     Semant/pickle/pickle-sym-pid.sml
205 :     Semant/pickle/pickmod-new.sml
206 :     Semant/pickle/unpickle-sym-pid.sml
207 :     Semant/pickle/unpickmod-new.sml
208 :     Semant/pickle/rehash.sml
209 :    
210 :     Semant/statenv/bindings.sml
211 :     Semant/statenv/lookup.sig
212 :     Semant/statenv/lookup.sml
213 :     Semant/statenv/prim.sml
214 :     Semant/statenv/genmap.sml
215 :     Semant/statenv/statenv.sig
216 :     Semant/statenv/statenv.sml
217 :     Semant/types/basictypes.sig
218 :     Semant/types/basictypes.sml
219 :     Semant/types/eqtypes.sml
220 :     Semant/types/tuples.sml
221 :     Semant/types/types.sig
222 :     Semant/types/types.sml
223 :     Semant/types/typesutil.sig
224 :     Semant/types/typesutil.sml
225 :     Semant/types/unify.sml
226 :     Semant/types/overload.sml
227 :     Semant/types/overloadlit.sml
228 :     Semant/types/reconstruct.sml
229 :     Semant/types/typecheck.sml
230 :     Semant/types/cproto.sml
231 :    
232 :     FLINT/clos/allocprof.sml
233 :     FLINT/clos/cps-split.sml
234 :     FLINT/clos/freemap.sml
235 :     FLINT/clos/globalfix.sml
236 :     FLINT/clos/closure.sml
237 :     FLINT/clos/freeclose.sml
238 :     FLINT/clos/staticprof.sml
239 :     FLINT/clos/unrebind.sml
240 :     FLINT/cps/convert.sml
241 :     FLINT/cps/cps.sig
242 :     FLINT/cps/cps.sml
243 :     FLINT/cps/cpstrans.sml
244 :     FLINT/cps/ppcps.sml
245 :     FLINT/cps/switch.sml
246 :     FLINT/cpsopt/contract.sml
247 :     FLINT/cpsopt/cpsopt.sml
248 :     FLINT/cpsopt/eta.sml
249 :     FLINT/cpsopt/etasplit.sml
250 :     FLINT/cpsopt/expand.sml
251 :     FLINT/cpsopt/expandNEW.sml
252 :     FLINT/cpsopt/flatten.sml
253 :     FLINT/cpsopt/uncurry.sml
254 :     FLINT/flint/chkflint.sml
255 :     FLINT/flint/flint.sig
256 :     FLINT/flint/flint.sml
257 :     FLINT/flint/flintutil.sml
258 :     FLINT/flint/ppflint.sig
259 :     FLINT/flint/ppflint.sml
260 :     FLINT/flint/tvarcvt.sml
261 :     FLINT/kernel/debindex.sig
262 :     FLINT/kernel/debindex.sml
263 :     FLINT/kernel/lambdavar.sig
264 :     FLINT/kernel/lambdavar.sml
265 :     FLINT/kernel/ltybasic.sig
266 :     FLINT/kernel/ltybasic.sml
267 :     FLINT/kernel/ltydef.sig
268 :     FLINT/kernel/ltydef.sml
269 :     FLINT/kernel/ltydict.sml
270 :     FLINT/kernel/ltyextern.sig
271 :     FLINT/kernel/ltyextern.sml
272 :     FLINT/kernel/ltykernel.sig
273 :     FLINT/kernel/ltykernel.sml
274 :     FLINT/kernel/primop.sig
275 :     FLINT/kernel/primop.sml
276 :     FLINT/kernel/primtyc.sig
277 :     FLINT/kernel/primtyc.sml
278 :     FLINT/main/flintcomp.sml
279 :     FLINT/main/control.sml
280 :     FLINT/main/literals.sml
281 :     FLINT/opt/fixfix.sml
282 :     FLINT/opt/collect.sml
283 :     FLINT/opt/fcontract.sml
284 :     FLINT/opt/optutils.sml
285 :     FLINT/opt/lcontract.sml
286 :     FLINT/opt/recover.sml
287 :     FLINT/opt/specialize.sml
288 :     FLINT/opt/loopify.sml
289 :     FLINT/opt/split.sml
290 :     FLINT/opt/lift.sml
291 :     FLINT/opt/abcopt.sml
292 :     FLINT/plambda/chkplexp.sml
293 :     FLINT/plambda/flintnm.sml
294 :     FLINT/plambda/pflatten.sig
295 :     FLINT/plambda/pflatten.sml
296 :     FLINT/plambda/plambda.sig
297 :     FLINT/plambda/plambda.sml
298 :     FLINT/plambda/plambdatype.sml
299 :     FLINT/plambda/pplexp.sml
300 :     FLINT/plambda/reorder.sml
301 :     FLINT/reps/coerce.sml
302 :     FLINT/reps/equal.sml
303 :     FLINT/reps/reify.sml
304 :     FLINT/reps/rttype.sml
305 :     FLINT/reps/typeoper.sml
306 :     FLINT/reps/wrapping.sml
307 :     FLINT/trans/matchcomp.sml
308 :     FLINT/trans/mccommon.sml
309 :     FLINT/trans/pequal.sml
310 :     FLINT/trans/tempexpn.sml
311 :     FLINT/trans/translate.sml
312 :     FLINT/trans/transtypes.sml
313 :    
314 :     FLINT/lsplit/ls-inline.sml
315 :    
316 :     CodeGen/cpscompile/argPassing.sig
317 :     CodeGen/cpscompile/argPassing.sml
318 :     CodeGen/cpscompile/cluster.sml
319 :     CodeGen/cpscompile/cps-aliasing.sml
320 :     CodeGen/cpscompile/cpsRegions.sig
321 :     CodeGen/cpscompile/cpsRegions.sml
322 :     CodeGen/cpscompile/cpsRegs.sig
323 :     CodeGen/cpscompile/frag.sig
324 :     CodeGen/cpscompile/frag.sml
325 :     CodeGen/cpscompile/invokegc.sig
326 :     CodeGen/cpscompile/invokegc.sml
327 :     CodeGen/cpscompile/limit.sml
328 :     CodeGen/cpscompile/memAliasing.sml
329 :     CodeGen/cpscompile/memDisambig.sml
330 :     CodeGen/cpscompile/pseudoOpType.sig
331 :     CodeGen/cpscompile/pseudoOpsBig.sml
332 :     CodeGen/cpscompile/pseudoOpsLittle.sml
333 :     CodeGen/cpscompile/smlnj-const.sml
334 :     CodeGen/cpscompile/smlnj-gctype.sig
335 :     CodeGen/cpscompile/smlnj-gctype.sml
336 :     CodeGen/cpscompile/smlnj-mltreeext.sig
337 :     CodeGen/cpscompile/smlnj-mltreeext.sml
338 :     CodeGen/cpscompile/spill.sml
339 :     CodeGen/main/clusterAnnotation.sml (* temporary hack; see comment in file *)
340 :     CodeGen/main/code-string.sml
341 :     CodeGen/main/machine.sig
342 :     CodeGen/main/machine-gen.sig
343 :     CodeGen/main/machine-gen.sml
344 :     CodeGen/main/machspec.sig
345 :     CodeGen/main/machspec.sml
346 :     CodeGen/main/mlriscGen.sml
347 :     CodeGen/main/object-desc.sig
348 :     CodeGen/main/object-desc.sml
349 :     CodeGen/main/spill-table.sml
350 :     CodeGen/main/dummy-ccalls.sml
351 :    
352 :     MiscUtil/bignums/bigint.sig
353 :     MiscUtil/bignums/bigint.sml
354 :     MiscUtil/bignums/realconst.sml
355 :     MiscUtil/bignums/ieeereal.sml
356 :     MiscUtil/print/ppabsyn.sml
357 :     MiscUtil/print/ppdec.sml
358 :     MiscUtil/print/ppmod.sml
359 :     MiscUtil/print/ppobj.sml
360 :     MiscUtil/print/pptable.sml
361 :     MiscUtil/print/pptype.sml
362 :     MiscUtil/print/pputil.sig
363 :     MiscUtil/print/pputil.sml
364 :     MiscUtil/print/ppval.sml
365 :     MiscUtil/print/pp-wrapper.sml
366 :     MiscUtil/print/printutil.sig
367 :     MiscUtil/print/printutil.sml
368 :     MiscUtil/profile/prof-env.sml
369 :     MiscUtil/profile/profile-fn.sml
370 :     MiscUtil/profile/profile.sig
371 :     MiscUtil/profile/profile.sml
372 :     MiscUtil/profile/sprof.sml
373 :     MiscUtil/profile/tell-env.sml
374 :     MiscUtil/profile/tprof.sml
375 :     MiscUtil/profile/btrace.sml
376 :     MiscUtil/profile/btimp.sml
377 :    
378 :     MiscUtil/util/errormsg.sig
379 :     MiscUtil/util/errormsg.sml
380 :     MiscUtil/util/feedback.sml
381 :     MiscUtil/util/intstrmap.sig
382 :     MiscUtil/util/intstrmap.sml
383 :     MiscUtil/util/literal-to-num.sml
384 :     MiscUtil/util/pathnames.sig
385 :     MiscUtil/util/pathnames.sml
386 :     MiscUtil/util/source.sig
387 :     MiscUtil/util/source.sml
388 :     MiscUtil/util/sourcemap.sig
389 :     MiscUtil/util/sourcemap.sml
390 :     MiscUtil/util/stats.sml
391 :    
392 :     $/basis.cm
393 :     $/smlnj-lib.cm
394 :     $/ml-yacc-lib.cm
395 :     $/pickle-lib.cm
396 :     $smlnj/MLRISC/Lib.cm (* provides SortedList *)
397 :     $smlnj/MLRISC/Control.cm
398 :     $smlnj/MLRISC/MLRISC.cm
399 :     $/pp-lib.cm

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