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

SCM Repository

[smlnj] Diff of /sml/trunk/src/MLRISC/MLRISC.cm
ViewVC logotype

Diff of /sml/trunk/src/MLRISC/MLRISC.cm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 418, Fri Sep 3 23:51:27 1999 UTC revision 429, Wed Sep 8 09:47:00 1999 UTC
# Line 1  Line 1 
1  Group (viscomp-lib.cm) is  (*
2     * This library contains only the core MLRISC stuff.
3     * This includes all the basic stuff necessary to compile the SML/NJ compiler.
4     *)
5    
6    Library
7            signature MLRISC_ERROR_MSG
8            structure MLRiscErrorMsg
9            signature MLRISC_CONTROL
10            structure MLRiscControl
11            signature MLRISC_TIMING
12            structure MLRiscTiming
13            signature CELLS_BASIS
14            signature CELLS
15            functor CellsBasisFn
16            signature REWRITE_INSTRUCTIONS
17            signature INSN_PROPERTIES
18            signature INSTRUCTION_STREAM
19            functor InstructionStreamFn
20            signature INSTRUCTIONS
21            functor Shuffle
22            signature BLOCK_NAMES
23            signature CONSTANT
24            signature LABELEXP
25            structure LabelExp
26            signature LABEL
27            structure Label
28            signature PSEUDO_OPS
29            signature REGION
30            signature FREQUENCY_PROPERTIES
31            functor FreqProps
32            signature BASIC_ANNOTATIONS
33            structure BasicAnnotations
34            signature MLRISC_REGION
35            structure MLRiscRegion
36            signature POINTS_TO
37            structure PointsTo
38            signature MLTREE_BASIS
39            structure MLTreeBasis
40            signature MLTREE
41            functor MLTreeF
42            signature MLTREE_UTIL
43            structure MLTreeUtil
44            signature MLTREECOMP
45            signature MLTREEGEN
46            functor MLTreeGen
47            signature FLOWGRAPH_GEN
48            signature MLTREE_MULT_DIV
49            functor MLTreeMult
50    (*      signature INSTR_GEN             LG *)
51    (*      functor InstrGen                LG *)
52            signature FLOWGRAPH
53            functor FlowGraph
54            functor ClusterGen
55            signature PRINT_CLUSTER
56            functor PrintClusterFn
57            signature GETREG
58            functor GetReg
59            signature LIVENESS
60            functor Liveness
61            signature RA_ARCH_PARAMS
62            signature RA_USER_PARAMS
63            signature RA
64            signature BITMATRIX
65            structure TriangularBitMatrix
66            signature RA_GRAPH
67            structure RAGraph
68            signature RA_CORE
69            structure RACore
70            functor RegAllocator
71            signature INSTRUCTION_EMITTER
72            signature ASSEMBLY_EMITTER
73            signature ASM_STREAM
74            structure AsmStream
75            signature ASM_FORMAT_UTIL
76            structure AsmFormatUtil
77            functor ClusterEmit
78            signature CODE_STRING
79            signature OBJ_TYPE
80            signature GC_CELLS
81            functor GCCells
82            signature GC_TYPE
83            functor GCType
84            functor BBSched2
85            signature BBSCHED
86            functor SpanDependencyResolution
87            signature DELAY_SLOT_PROPERTIES
88            functor NoDelaySlots
89            signature SDI_JUMPS
90            signature MC_EMIT
91            functor BackPatch
92            signature SPARCCELLS
93            structure SparcCells
94            signature SPARCINSTR
95            functor SparcInstr
96            signature SPARCSHUFFLE
97            functor SparcShuffle
98            functor SparcProps
99            functor SparcFreqProps
100            functor SparcAsmEmitter
101            functor SparcMCEmitter
102            functor SparcJumps
103            signature SPARC_PSEUDO_INSTR
104            functor Sparc
105            functor SparcRewrite
106            functor SparcRegAlloc
107            functor SparcDelaySlots
108            signature HPPACELLS
109            structure HppaCells
110            signature HPPAINSTR
111            functor HppaInstr
112            signature HPPASHUFFLE
113            functor HppaShuffle
114            functor HppaProps
115            functor HppaFreqProps
116            functor HppaAsmEmitter
117            functor HppaMCEmitter
118            functor HppaDelaySlots
119            functor HppaJumps
120            signature HPPA_MILLICODE
121            signature LABEL_COMP
122            functor Hppa
123            functor HppaRewrite
124            functor HppaRegAlloc
125            signature ALPHACELLS
126            structure AlphaCells
127            signature ALPHAINSTR
128            functor AlphaInstr
129            signature ALPHASHUFFLE
130            functor AlphaShuffle
131            functor AlphaProps
132            functor AlphaFreqProps
133            functor AlphaAsmEmitter
134            functor AlphaMCEmitter
135            functor AlphaJumps
136            signature ALPHA_PSEUDO_INSTR
137            functor Alpha
138            functor AlphaRewrite
139            functor AlphaRegAlloc
140            signature X86CELLS
141            structure X86Cells
142            signature X86INSTR
143            functor X86Instr
144            signature X86SHUFFLE
145            functor X86Shuffle
146            functor X86Props
147            signature MEMORY_REGISTERS
148            functor X86FreqProps
149            functor X86AsmEmitter
150            functor X86MCEmitter
151            signature X86REWRITE
152            functor X86Rewrite
153            functor X86RegAlloc
154            signature X86SPILL
155            functor X86Spill
156            signature X86REWRITE_PSEUDO
157            functor X86RewritePseudo
158            functor X86Jumps
159            functor X86
160            signature PPCCELLS
161            structure PPCCells
162            signature PPCINSTR
163            functor PPCInstr
164            signature PPCSHUFFLE
165            functor PPCShuffle
166            functor PPCProps
167            functor PPCFreqProps
168            functor PPCAsmEmitter
169            functor PPCMCEmitter
170            functor PPCDelaySlots
171            functor PPCJumps
172            signature PPC_PSEUDO_INSTR
173            functor PPC
174            functor PPCRewrite
175            functor PPCRegAlloc
176    is
177    
178    basis.cm    basis.cm
179    comp-lib.cm    comp-lib.cm
180            smlnj-lib.cm
181    
182  library/sources.cm          MLRISC-Lib.cm
 graphs/sources.cm  
 visualization/sources.cm  
 ir/sources.cm  
183    
184  (* Core definitions. These are required *)  (* Core definitions. These are required *)
185  control/mlriscErrormsg.sml  control/mlriscErrormsg.sml
# Line 15  Line 188 
188    
189  instructions/cells.sig  instructions/cells.sig
190  instructions/cells.sml  instructions/cells.sml
191            instructions/rewrite.sig
192  instructions/insnProps.sig  instructions/insnProps.sig
193  instructions/stream.sig  instructions/stream.sig
194  instructions/stream.sml  instructions/stream.sml
# Line 26  Line 200 
200  instructions/labels.sml  instructions/labels.sml
201  instructions/pseudoOps.sig  instructions/pseudoOps.sig
202  instructions/region.sig  instructions/region.sig
 instructions/basicAnnotations.sig  
 instructions/basicAnnotations.sml  
203  instructions/freqProps.sig  instructions/freqProps.sig
204  instructions/freqProps.sml  instructions/freqProps.sml
205            instructions/basicAnnotations.sig
206            instructions/basicAnnotations.sml
207    
208  (* New aliasing/memory disambiguation support *)  (* New aliasing/memory disambiguation support *)
209  aliasing/mlriscRegion.sig  aliasing/mlriscRegion.sig
# Line 38  Line 211 
211  aliasing/pointsTo.sig  aliasing/pointsTo.sig
212  aliasing/pointsTo.sml  aliasing/pointsTo.sml
213    
214            (* Core definitions for the MLTREE language. These are required. *)
215  mltree/mltree-basis.sig  mltree/mltree-basis.sig
216  mltree/mltree-basis.sml  mltree/mltree-basis.sml
217  mltree/mltree.sig  mltree/mltree.sig
# Line 50  Line 224 
224  mltree/flowgen.sig  mltree/flowgen.sig
225  mltree/mltree-mult.sig  mltree/mltree-mult.sig
226  mltree/mltree-mult.sml  mltree/mltree-mult.sml
227    (*
228            mltree/instr-gen.sig
229            mltree/instr-gen.sml
230    *)
231    
232  (* Basic cluster stuff. These are required. *)  (* Basic cluster stuff. These are required. *)
233  cluster/flowgraph.sml  cluster/flowgraph.sml
 cluster/printCluster.sml  
234  cluster/clustergen.sml  cluster/clustergen.sml
235            cluster/printCluster.sml
   
 (* MLRISC IR for optimizations. These are necessary only if you want  
  * to use various optional MLRISC optimizations.  
  *)  
 IR/dataflow.sig  
 IR/dataflow.sml  
 IR/mlrisc-cfg-util.sig  
 IR/mlrisc-cfg-util.sml  
 IR/mlrisc-cfg.sig  
 IR/mlrisc-cfg.sml  
 IR/mlrisc-cfg2cluster.sml  
 IR/mlrisc-cluster2cfg.sml  
 IR/mlrisc-format-insn.sml  
 IR/mlrisc-ir.sig  
 IR/mlrisc-ir.sml  
 IR/mlrisc-liveness.sml  
 IR/mlrisc-reshape-branches.sig  
 IR/mlrisc-reshape-branches.sml  
 IR/static-branch-prediction.sig  
 IR/static-branch-prediction.sml  
   
236    
237  (* Core register allocator utilities *)  (* Core register allocator utilities *)
238  ra/getreg.sig  ra/getreg.sig
239  ra/getreg.sml  ra/getreg.sml
240  ra/liveness.sml  ra/liveness.sml
241  ra/ra-params.sig  ra/ra-params.sig
 ra/ra.sml  
242  ra/raBitset.sml  ra/raBitset.sml
243    
244            (* The newer register allocator.
245             * This is the one we use.  It is basically the same as the old ra
246             * but with some organizational changes.
247             *)
248            ra/ra-graph.sig
249            ra/ra-graph.sml
250            ra/ra-core.sig
251            ra/ra-core.sml
252            ra/ra-iteratedCoalescing.sml
253    
254  (* Assembly machine code stuff *)  (* Assembly machine code stuff *)
255  emit/instruction-emitter.sig  emit/instruction-emitter.sig
256  emit/asmEmit.sml          emit/asmEmit.sig
257  emit/asmStream.sml  emit/asmStream.sml
258            emit/asmUtil.sml
259            emit/clusterEmit.sml
260  emit/code-string.sig  emit/code-string.sig
 emit/emitterNEW.sig  
261    
262            (* Basic GC types stuff *)
263            gc-safety/gc-obj-type.sig
264            gc-safety/gc-cells.sig
265            gc-safety/gc-cells.sml
266            gc-safety/gc-type.sig
267            gc-safety/gc-type.sml
268    
269            (* Span dependency stuff *)
270  backpatch/backpatch.sml  backpatch/backpatch.sml
271  backpatch/bbsched.sig  backpatch/bbsched.sig
272            backpatch/spanDep.sml
273  backpatch/delaySlotProps.sig  backpatch/delaySlotProps.sig
274            backpatch/noDelaySlots.sml
275  backpatch/sdi-jumps.sig  backpatch/sdi-jumps.sig
 backpatch/spanDep.sml  
276  backpatch/vlBackPatch.sml  backpatch/vlBackPatch.sml
277    
278  (* Sparc specific backend *)  (* Sparc specific backend *)
# Line 107  Line 281 
281  sparc/instructions/sparcShuffle.sig  sparc/instructions/sparcShuffle.sig
282  sparc/instructions/sparcShuffle.sml  sparc/instructions/sparcShuffle.sml
283  sparc/instructions/sparcProps.sml  sparc/instructions/sparcProps.sml
284            sparc/instructions/sparcFreqProps.sml
285  sparc/emit/sparcAsm.sml  sparc/emit/sparcAsm.sml
286  sparc/emit/sparcMC.sml  sparc/emit/sparcMC.sml
287  sparc/backpatch/sparcJumps.sml  sparc/backpatch/sparcJumps.sml
 sparc/backpatch/sparcDelaySlotProps.sml  
288  sparc/mltree/sparcPseudoInstr.sig  sparc/mltree/sparcPseudoInstr.sig
289  sparc/mltree/sparc.sml  sparc/mltree/sparc.sml
290  sparc/ra/sparcRewrite.sml  sparc/ra/sparcRewrite.sml
291  sparc/ra/sparcRegAlloc.sml  sparc/ra/sparcRegAlloc.sml
292            sparc/backpatch/sparcDelaySlotProps.sml
293    
294  (* HPPA specific backend *)  (* HPPA specific backend *)
295  hppa/instructions/hppaCells.sml  hppa/instructions/hppaCells.sml
# Line 122  Line 297 
297  hppa/instructions/hppaShuffle.sig  hppa/instructions/hppaShuffle.sig
298  hppa/instructions/hppaShuffle.sml  hppa/instructions/hppaShuffle.sml
299  hppa/instructions/hppaProps.sml  hppa/instructions/hppaProps.sml
300            hppa/instructions/hppaFreqProps.sml
301  hppa/emit/hppaAsm.sml  hppa/emit/hppaAsm.sml
302  hppa/emit/hppaMC.sml  hppa/emit/hppaMC.sml
303  hppa/backpatch/hppaDelaySlotProps.sml  hppa/backpatch/hppaDelaySlotProps.sml
# Line 138  Line 314 
314  alpha/instructions/alphaShuffle.sig  alpha/instructions/alphaShuffle.sig
315  alpha/instructions/alphaShuffle.sml  alpha/instructions/alphaShuffle.sml
316  alpha/instructions/alphaProps.sml  alpha/instructions/alphaProps.sml
317            alpha/instructions/alphaFreqProps.sml
318  alpha/emit/alphaAsm.sml  alpha/emit/alphaAsm.sml
319  alpha/emit/alphaMC.sml  alpha/emit/alphaMC.sml
320  alpha/backpatch/alphaJumps.sml  alpha/backpatch/alphaJumps.sml
# Line 153  Line 330 
330  x86/instructions/x86Shuffle.sml  x86/instructions/x86Shuffle.sml
331  x86/instructions/x86Props.sml  x86/instructions/x86Props.sml
332  x86/instructions/x86MemRegs.sig  x86/instructions/x86MemRegs.sig
333            x86/instructions/x86FreqProps.sml
334  x86/emit/x86Asm.sml  x86/emit/x86Asm.sml
335  x86/x86MC.sml           (* temporary handwritten version *)          x86/x86MC.sml
336  x86/ra/x86Rewrite.sig  x86/ra/x86Rewrite.sig
337  x86/ra/x86Rewrite.sml  x86/ra/x86Rewrite.sml
338  x86/ra/x86RegAlloc.sml  x86/ra/x86RegAlloc.sml
# Line 169  Line 347 
347  ppc/instructions/ppcShuffle.sig  ppc/instructions/ppcShuffle.sig
348  ppc/instructions/ppcShuffle.sml  ppc/instructions/ppcShuffle.sml
349  ppc/instructions/ppcProps.sml  ppc/instructions/ppcProps.sml
350            ppc/instructions/ppcFreqProps.sml
351  ppc/emit/ppcAsm.sml  ppc/emit/ppcAsm.sml
352  ppc/emit/ppcMC.sml  ppc/emit/ppcMC.sml
353            ppc/backpatch/ppcDelaySlots.sml
354  ppc/backpatch/ppcJumps.sml  ppc/backpatch/ppcJumps.sml
355  ppc/mltree/ppcPseudoInstr.sig  ppc/mltree/ppcPseudoInstr.sig
356  ppc/mltree/ppc.sml  ppc/mltree/ppc.sml
357  ppc/ra/ppcRewrite.sml  ppc/ra/ppcRewrite.sml
358  ppc/ra/ppcRegAlloc.sml  ppc/ra/ppcRegAlloc.sml
   
 (* Glue modules.  These are required only if you want to  
  * play with optimizations.  
  *)  
 Glue/mlrisc-glue.sig  
 Glue/mlrisc-glue.sml  

Legend:
Removed from v.418  
changed lines
  Added in v.429

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