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

SCM Repository

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

View of /sml/trunk/src/MLRISC/cm/ALL.cm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 984 - (download) (annotate)
Wed Nov 21 19:00:08 2001 UTC (18 years ago) by george
File size: 24505 byte(s)
  Implemented a complete redesign of MLRISC pseudo-ops. Now there
  ought to never be any question of incompatabilities with
  pseudo-op syntax expected by host assemblers.

  For now, only modules supporting GAS syntax are implemented
  but more should follow, such as MASM, and vendor assembler
  syntax, e.g. IBM as, Sun as, etc.
ALPHA.cm:

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(* Alpha specific backend *)
	../alpha/instructions/alphaCells.sml
	../alpha/instructions/alphaInstr.sml
	../alpha/instructions/alphaShuffle.sig
	../alpha/instructions/alphaShuffle.sml
	../alpha/instructions/alphaProps.sml
	../alpha/instructions/alphaFreqProps.sml
	../alpha/emit/alphaAsm.sml
	../alpha/emit/alphaMC.sml
	../alpha/backpatch/alphaJumps.sml
	../alpha/flowgraph/alphaGasPseudoOps.sml
	../alpha/mltree/alphaPseudoInstr.sig
	../alpha/mltree/alpha.sml
	../alpha/ra/alphaRewrite.sml

ALPHA-GC.cm:

        smlnj-lib.cm
	MLRISC.cm
	GC.cm
	ALPHA.cm
	
ALPHA-Peephole.cm:

	MLRISC.cm
	Peephole.cm
	ALPHA.cm

	(* alpha *)
	../alpha/instructions/alphaPeephole.sml
ALPHA-RTL.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	Region.cm
	ALPHA.cm
	
	(* Alpha specific backend *)
	../alpha/mltree/alphaRTL.sml 
	../alpha/mltree/alphaRTLProps.sml 

ALPHA-Sched.cm:
(*
 * This library contains the superscalar scheduling stuff.
 *)
        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	ALPHA.cm
	Sched.cm
	Region.cm
	
	(* Alpha scheduler *) 
	../alpha/scheduling/alphaSchedProps.sml

ALPHA-SSA.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	SSA.cm
	Region.cm
	ALPHA.cm
	ALPHA-RTL.cm
	
	(* Alpha specific backend *)
	../alpha/SSA/alphaSSAProps.sml

Control.cm:

        ../control/mlriscErrormsg.sml
        ../control/mlrisc-control.sml
        ../control/mlrisc-timing.sml

GC.cm:
(*
 * This library implements GC safety. 
 *)

        smlnj-lib.cm
	Control.cm
	Lib.cm
	Graphs.cm
	MLRISC.cm
	IR.cm
	RTL.cm

	(* GC safety stuff *)
	../gc-safety/gc-gen.sig
	../gc-safety/gc-gen.sml
	../gc-safety/gc-liveness.sig
	../gc-safety/gc-liveness.sml
	../gc-safety/gc-typemap.sig
	../gc-safety/gc-typemap.sml
	../gc-safety/gc-dummy-type.sml
	../gc-safety/gc-type-system.sig
	../gc-safety/gc-type-system.sml
	../gc-safety/gc-invariants.sml

Graphs.cm:
(*
 * This is a generic graph library. 
 *)

        smlnj-lib.cm
	Control.cm
	Lib.cm

	../graphs/acyclic-graph.sml
	../graphs/bellman-ford.sml
	../graphs/bigraph.sig
	../graphs/closed-semi-ring.sig
	../graphs/digraph.sml
	../graphs/dijkstra.sml
	../graphs/floyd-warshall.sml
	../graphs/johnson.sml
	../graphs/graph-bfs.sig
	../graphs/graph-bfs.sml
	../graphs/graph-bcc.sig
	../graphs/graph-bcc.sml
	../graphs/graph-comb.sig
	../graphs/graph-comb.sml
	../graphs/graph-cycles.sig
	../graphs/graph-cycles.sml
	../graphs/graph-dfs.sig
	../graphs/graph-dfs.sml
	../graphs/graph-is-cyclic.sig
	../graphs/graph-is-cyclic.sml
	../graphs/graph-minor.sml
	../graphs/graph-scc.sig
	../graphs/graph-scc.sml
	../graphs/graph-topsort.sig
	../graphs/graph-topsort.sml
	../graphs/graph.sig
	../graphs/graph.sml
	../graphs/graphimpl.sig
	../graphs/group.sig
	../graphs/isograph.sml
	../graphs/kruskal.sml
	../graphs/matching.sig
	../graphs/matching.sml
	../graphs/max-flow.sig
	../graphs/max-flow.sml
	../graphs/min-cut.sig
	../graphs/min-cut.sml
	../graphs/no-exit.sml
	../graphs/node-partition.sml
	../graphs/node-priqueue.sig
	../graphs/node-priqueue.sml
	../graphs/printgraph.sml
	../graphs/readonly.sml
	../graphs/renamegraph.sml
	../graphs/revgraph.sml
	../graphs/seme.sml
	../graphs/shortest-paths.sig
	../graphs/singleton.sml
	../graphs/snap-shot.sml
	../graphs/spanning-tree.sig
	../graphs/start-stop.sml
	../graphs/subgraph-p.sml
	../graphs/subgraph.sml
	../graphs/trace-graph.sml
	../graphs/trans-closure.sml
	../graphs/ugraph.sml
	../graphs/uniongraph.sml
	../graphs/wrappers.sml
	../graphs/udgraph.sml
	../graphs/update-graph-info.sml

HPPA.cm:

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(* HPPA specific backend *)
	../hppa/instructions/hppaCells.sml
	../hppa/instructions/hppaInstr.sml
	../hppa/instructions/hppaShuffle.sig
	../hppa/instructions/hppaShuffle.sml
	../hppa/instructions/hppaProps.sml
	../hppa/instructions/hppaFreqProps.sml
	../hppa/emit/hppaAsm.sml
	../hppa/emit/hppaMC.sml
	../hppa/backpatch/hppaDelaySlotProps.sml
	../hppa/backpatch/hppaJumps.sml
	../hppa/flowgraph/hppaGasPseudoOps.sml
	../hppa/mltree/hppaMillicode.sig
	../hppa/mltree/hppaLabelComp.sig
	../hppa/mltree/hppa.sml
	../hppa/ra/hppaRewrite.sml
	(* ../hppa/ra/hppaRegAlloc.sml *)
	
HPPA-GC.cm:


	MLRISC.cm
	GC.cm
	HPPA.cm
	
	(* Hppa specific backend *)
HPPA-RTL.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	Region.cm
	HPPA.cm
	
	(* Hppa specific backend *)
	../hppa/mltree/hppaRTL.sml 
	../hppa/mltree/hppaRTLProps.sml 

HPPA-Sched.cm:

        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	HPPA.cm
	Sched.cm
	Region.cm
	
	(* Hppa scheduler *) 
	../hppa/scheduling/hppaSchedProps.sml
HPPA-SSA.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	SSA.cm
	Region.cm
	HPPA.cm
	HPPA-RTL.cm
	
	(* Hppa specific backend *)
	../hppa/SSA/hppaSSAProps.sml
IA32.cm:

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm
        Graphs.cm
	MLTREE.cm

        (* c calls *)
        ../x86/c-calls/ia32-svid.sml

        ../x86/flowgraph/x86GasPseudoOps.sml

	(* omit frame pointer *)
	../x86/omit-frameptr/x86omit-frameptr.sml

	(* X86 specific backend *)
	../x86/instructions/x86Cells.sml
	../x86/instructions/x86comp-instr-ext.sml
	../x86/instructions/x86Instr.sml
	../x86/instructions/x86instr-ext.sml
	../x86/instructions/x86Shuffle.sig
	../x86/instructions/x86Shuffle.sml
	../x86/instructions/x86Props.sml
	../x86/instructions/x86MemRegs.sig
	../x86/instructions/x86FreqProps.sml
	../x86/instructions/x86ExpandCopies.sml
	../x86/emit/x86Asm.sml
	../x86/x86MC.sml
	../x86/ra/x86Rewrite.sig
	../x86/ra/x86Rewrite.sml
	(* ../x86/ra/x86RegAlloc.sml *)
	../x86/ra/x86Spill.sml
	(* This is no long needed *)
	(* ../x86/ra/x86PseudoR.sml *)
	../x86/backpatch/x86Jumps.sml 
	../x86/mltree/x86.sml

	(* Floating Point Code Generation/Optimization *)
	../x86/mltree/x86-fp.sml

	(* register allocator *)
	../x86/ra/x86RA.sml


IA32-GC.cm:

        smlnj-lib.cm
	MLRISC.cm
	GC.cm
	IA32.cm
	
	(* X86 specific backend *)
IA32-Peephole.cm:

        smlnj-lib.cm
	Control.cm
	MLRISC.cm
	Peephole.cm
	IA32.cm

	(* x86 *)
	../x86/instructions/x86Peephole.sml
	../x86/instructions/x86-leaf-opt.sml

IA32-RTL.cm:

        smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	Region.cm
	IA32.cm
	
	(* x86 specific backend *)
	../x86/mltree/x86RTL.sml 
	../x86/mltree/x86RTLProps.sml 

IA32-Sched.cm:

        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	IA32.cm
	Sched.cm
	Region.cm
	
	(* X86 scheduler *) 
	../x86/scheduling/x86Arch.sig
	../x86/scheduling/x86ReservationTable.sig
	../x86/scheduling/x86PairingRT.sml
	../x86/scheduling/x86PipelineRT.sml
	../x86/scheduling/x86PentiumII.sml
	../x86/scheduling/x86PentiumPro.sml
	(* ../x86/scheduling/x86SchedulingProps.sml *)

	../x86/scheduling/x86SchedProps.sml

IA32-SSA.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	SSA.cm
	Region.cm
	IA32.cm
	IA32-RTL.cm
	
	(* X86 specific backend *)
	../x86/SSA/x86SSAProps.sml
IR.cm:

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm
	Graphs.cm
	Visual.cm
	ir.cm
	MLTREE.cm

	(* These provide a graph view for clusters.  Required if you 
	 * want to perform any non-trivial analysis on the program.
	 * Also required if you want to use the visualization stuff on clusters.
	 *)
	../cluster/clusterGraph.sig
	../cluster/clusterGraph.sml
	../cluster/clusterViewer.sig
	../cluster/clusterViewer.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-branch-chaining.sml
	../IR/mlrisc-cfg-util.sig
	../IR/mlrisc-cfg-util.sml
	../IR/mlrisc-cpr.sml
	../IR/mlrisc-format-insn.sml
	../IR/idefs2.sig
	../IR/idefs2.sml
	../IR/mlrisc-idefs.sig
	../IR/mlrisc-idefs.sml
	../IR/mlrisc-ir.sig
	../IR/mlrisc-ir.sml
	../IR/mlrisc-ir-optimization.sig
	../IR/mlrisc-liveness.sml
	../IR/mlrisc-preheaders.sml
	../IR/mlrisc-reshape-branches.sml
	../IR/static-branch-prediction.sml
	
	(* Glue modules.  These are required only if you want to 
	 * play with optimizations.
	 *)
	../Glue/mlrisc-glue.sig
	../Glue/mlrisc-glue.sml
ir.cm:
        smlnj-lib.cm
	Control.cm
	Lib.cm
	Graphs.cm

	../ir/apt.sig
	../ir/apt.sml
	../ir/cdg.sig
	../ir/cdg.sml
	../ir/compute-freq.sig
	../ir/compute-freq.sml
	../ir/compute-freq2.sig
	../ir/compute-freq2.sml
	../ir/comp-djgraph.sml
	../ir/derived-graph.sig
	../ir/derived-graph.sml
	../ir/dj-dataflow.sig
	../ir/dj-dataflow.sml
	../ir/djgraph.sig
	../ir/djgraph.sml
	../ir/dominance-frontier.sig
	../ir/dominance-frontier.sml
	../ir/dominator.sig
	../ir/dominator.sml
	../ir/reducibility.sig
	../ir/reducibility.sml
	../ir/loop-structure.sig
	../ir/loop-structure.sml
	../ir/ssa.sig
	../ir/ssa.sml

Lib.cm:
(*
 * This is the MLRISC library
 *)
        smlnj-lib.cm
	Control.cm

	../library/annotations.sig
	../library/annotations.sml
	../library/bitset.sig
	../library/bitset.sml
	../library/cache.sml
	../library/catlist.sml
	../library/dynamic-array.sml
(*
	../library/dynamic-bitset.sml
	../library/fixed-point.sig
	../library/fixed-point.sml
 *)
	../library/freq.sig
	../library/freq.sml
	../library/hash-array.sml
(*
	../library/hash-table.sig
	../library/hash-table.sml
	../library/hashMap.sig
	../library/hashMap.sml
	../library/hashBag.sig
	../library/hashBag.sml
	../library/hashMultimap.sig
	../library/hashMultimap.sml
	../library/hashSet.sig
	../library/hashSet.sml
	../library/int-set.sml
 *)
 (*
	../library/intmap.sig
	../library/intmap.sml
  *)
	../library/heap.sml
	../library/line-break.sml
	../library/priQueue.sig
	../library/priQueue.sml
(*
	../library/probability.sml
	../library/randlist.sml
	../library/regset.sig
	../library/regset.sml
 *)
	../library/sortedlist.sml
	../library/stringOutStream.sig
	../library/stringOutStream.sml
(*
	../library/susp.sml
	../library/transaction-glue.sml
	../library/transaction-log.sig
	../library/transaction-log.sml
	../library/transaction.sig
	../library/transaction.sml
	../library/undoable-array.sml
	../library/undoable-ref.sml
 *)
 (*
	../library/word64.sml
  *)

MIPS.cm:
(*
 * MIPS specific modules for MLRISC code generation framework.
 *)

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(* MIPS specific backend *)
	../mips/instructions/mipsCells.sml
	../mips/instructions/mipsInstr.sml
	../mips/instructions/mipsShuffle.sig
	../mips/instructions/mipsShuffle.sml
	../mips/instructions/mipsProps.sml
	../mips/instructions/mipsFreqProps.sml
	../mips/instructions/mipsExpandCopies.sml
	../mips/emit/mipsAsm.sml
	../mips/emit/mipsMC.sml
	../mips/backpatch/mipsDelaySlotProps.sml
	../mips/backpatch/mipsJumps.sml
	../mips/mltree/mipsPseudoInstr.sig
	../mips/mltree/mips.sml
	../mips/ra/mipsRewrite.sml
MLRISC.cm:
(* MLRISC.cm
 *
 * COPYRIGHT (c) 1999 Bell Labs, Lucent Technologies.
 *
 * This library contains only the core MLRISC stuff.  There are
 * architecture-specific files for the various supported machines.
 *)

        smlnj-lib.cm
	Control.cm
 	Graphs.cm
	Visual.cm
	Lib.cm

	(* Core definitions. These are required *)
	../instructions/cells.sig
	../instructions/cells.sml
	../instructions/cells-basis.sig
	../instructions/cells-basis.sml
	../instructions/expandCopies.sig
	../instructions/rewrite.sig
	../instructions/insnProps.sig
	../instructions/stream.sig
	../instructions/stream.sml
	../instructions/instructions.sig
	../instructions/shuffle.sig
	../instructions/shuffle.sml
	../instructions/constant.sig
	../instructions/label.sml
	../instructions/label-sig.sml
	../instructions/region.sig
	../instructions/freqProps.sig
	../instructions/freqProps.sml
	../instructions/mlriscAnnotations.sig
	../instructions/mlriscAnnotations.sml
	../instructions/mlriscOptimization.sig
	
	(* New ../aliasing/memory disambiguation support *)
	../aliasing/mlriscRegion.sig
	../aliasing/mlriscRegion.sml
	../aliasing/pointsTo.sig
	../aliasing/pointsTo.sml
	
	(* Core definitions for the MLTREE language. These are required. *)
	../mltree/mltree.sig
	../mltree/mltree.sml
	../mltree/mltree-eval.sig
	../mltree/mltree-eval.sml
	../mltree/mltree-extension.sig
	../mltree/mltree-basis.sig
	../mltree/mltree-basis.sml
	../mltree/mltreecomp.sig
	../mltree/mltree-gen.sig
	../mltree/mltree-gen.sml
	../mltree/mltree-hash.sig
	../mltree/mltree-hash.sml
	../mltree/mltree-size.sig
	../mltree/mltree-size.sml
	../mltree/mltree-stream.sml
	../mltree/mltree-mult.sig
	../mltree/mltree-mult.sml
	../mltree/machine-int.sig
	../mltree/machine-int.sml
	
	(* Basic cluster stuff. These are required. *)
	../flowgraph/buildFlowgraph.sml
	../flowgraph/cfg-optimization.sig
	../flowgraph/client-pseudo-ops.sig
	../flowgraph/cfg.sig
	../flowgraph/cfg.sml
	../flowgraph/cfgView.sig
	../flowgraph/cfgView.sml
	../flowgraph/cfgCountCopies.sml
	../flowgraph/cfgExpandCopies.sml
	../flowgraph/gasPseudoOps.sml
	../flowgraph/printFlowgraph.sml
	../flowgraph/pseudo-ops.sig
	../flowgraph/pseudo-ops.sml
	../flowgraph/pseudo-ops-basis.sig
	../flowgraph/pseudo-ops-basis-typ.sml
	../flowgraph/pseudo-ops-big.sml
	../flowgraph/pseudo-ops-little.sml

	
	(* Core register allocator utilities *)
	../ra/getreg.sig
	../ra/getreg.sml
	../ra/getreg2.sml
	../ra/liveness.sml
	
        (* Spill heuristics *)
        ../ra/chaitin-spillheur.sml
        ../ra/chow-hennessy-spillheur.sml

	(* New RA *)
        ../ra/ra-graph.sig
        ../ra/ra-graph.sml
        ../ra/ra-core.sig
        ../ra/ra-core.sml
        ../ra/ra-spill-types.sml
        ../ra/ra-spill.sig
        ../ra/ra-spill.sml
        ../ra/ra-spillheur.sig
        ../ra/ra-flowgraph.sig
        ../ra/ra-flowgraph-part.sig
        ../ra/ra.sig
        ../ra/ra.sml
	../ra/ra-deadCodeE.sml
	../ra/ra-priqueue.sig
	../ra/mem-ra.sml
	../ra/region-based-ra.sml
	../ra/risc-ra.sml

        (* Cluster based RA's *)
        ../ra/cluster-ra.sml

	(* Assembly machine code stuff *)
	../emit/instruction-emitter.sig
	../emit/asmEmit.sig 
	../emit/asmStream.sml
	../emit/asmUtil.sml
	../emit/cfgEmit.sml
	../emit/code-string.sig
	
	(* Basic GC types stuff *)
	../gc-safety/gc-cells.sig
	../gc-safety/gc-cells.sml
	../gc-safety/gc-type.sig
	
	(* Span dependency stuff *)
	../backpatch/backpatch.sml
	../backpatch/bbsched.sig
	../backpatch/spanDep.sml
	../backpatch/delaySlotProps.sig
	../backpatch/noDelaySlots.sml
	../backpatch/sdi-jumps.sig
	../backpatch/vlBackPatch.sml

	(* block placement *)
	../block-placement/block-placement.sig
	../block-placement/default-block-placement.sml

        (* c calls *)
        ../c-calls/c-types.sml
        ../c-calls/c-calls.sig

 	(* omit frame pointer optimization *)
 	../omit-frameptr/omit-frame-pointer.sig

MLTREE.cm:
(*
 * This library contains some simple MLTree utilities 
 *)
        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	../mltree/mltree-utils.sig
	../mltree/mltree-utils.sml
	../mltree/mltree-fold.sig
	../mltree/mltree-fold.sml
	../mltree/mltree-rewrite.sig
	../mltree/mltree-rewrite.sml
	../mltree/mltree-simplify.sig
	../mltree/mltree-simplify.sml
	../mltree/instr-gen.sig
	../mltree/instr-gen.sml

Opt.cm:
(*
 * This library implemenents the MLRISC SSA optimizer.
 *)

	MLRISC.cm
	Control.cm
	Lib.cm
	Graphs.cm
	Visual.cm
	ir.cm
	IR.cm
	RTL.cm
	SSA.cm
	Sched.cm
	GC.cm
	
	../Glue/mlrisc-optimizer.sml

Peephole.cm:
(* 
 * This library contains only the peephole optimization stuff.  
 *)
        smlnj-lib.cm
	MLRISC.cm
	Graphs.cm

	(* Peephole optimizations *)
	../instructions/peephole.sig
	../flowgraph/cfgPeephole.sml

PPC.cm:
(* 
 * PowerPC specific modules for MLRISC code generation framework.
 *)

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(* PowerPC specific backend *)
	../ppc/instructions/ppcCells.sml
	../ppc/instructions/ppcInstr.sml
	../ppc/instructions/ppcShuffle.sig
	../ppc/instructions/ppcShuffle.sml
	../ppc/instructions/ppcProps.sml
	../ppc/instructions/ppcFreqProps.sml
	../ppc/emit/ppcAsm.sml
	../ppc/emit/ppcMC.sml
	../ppc/backpatch/ppcDelaySlots.sml
	../ppc/backpatch/ppcJumps.sml
	../ppc/flowgraph/ppcGasPseudoOps.sml
	../ppc/mltree/ppcPseudoInstr.sig
	../ppc/mltree/ppc.sml 
	../ppc/ra/ppcRewrite.sml
	(* ../ppc/ra/ppcRegAlloc.sml *)

PPC-GC.cm:

        smlnj-lib.cm
	MLRISC.cm
	GC.cm
	PPC.cm
	
	(* PowerPC specific backend *)

PPC-Sched.cm:
(*
 * This library contains the superscalar scheduling stuff.
 *)
        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	PPC.cm
	Sched.cm
	Region.cm
	
	(* PowerPC scheduler *) 
	../ppc/scheduling/ppcSchedProps.sml

RA.cm:

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(*../ra/ra-spill-gcm.sig
	../ra/ra-spill-gcm.sml
	../ra/lcm.sig
	../ra/lcm.sml
	../ra/frame-info.sig
	../ra/cluster-frame-info.sml*)
	(* ../ra/interproc-mem-ra.sml *)

	../ra/chaitin-spillheur2.sml
	../ra/chow-hennessy-spillheur2.sml

	../ra/ra-spill-with-renaming.sml

Region.cm:
(*
 * This library contains the basic interface to the regions stuff 
 *)

        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	../instructions/regionInfo.sml
	../instructions/regionProps.sig

	../aliasing/pointsToInfo.sig
	../aliasing/pointsToInfo.sml
RTL.cm:
(*
 *  This library contains modules that implements the RTL and related stuff
 *)

        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	MLTREE.cm
	
	(* RTL *)
	../mltree/mltree-rtl.sig
	../mltree/mltree-rtl.sml
	../mltree/rtl-props.sig
	../mltree/rtl-build.sig
	../mltree/rtl-build.sml

	(* Operand tables *)
	../mltree/operand-table.sig
	../mltree/operand-table.sml

Sched.cm:
(*
 * This library contains the superscalar scheduling stuff.
 *)
        smlnj-lib.cm
	Control.cm
	Lib.cm
	Graphs.cm
	Visual.cm
	ir.cm
	MLRISC.cm
	RTL.cm
	IR.cm

	(* Rank algorithms *)
	../scheduling/PalemSimons.sig
	../scheduling/PalemSimons.sml
	../scheduling/LeungPalemPnueli.sig
	../scheduling/LeungPalemPnueli.sml

	(* Data dependence dag representation *)
	../scheduling/schedulerDDG.sig
	../scheduling/schedulerDDG.sml

	(* Signature of a rank function *)
	../scheduling/schedulingRanks.sig

	(* Architectural Properties *)
	../scheduling/schedulingProps.sig

	(* Basic block scheduling *)
	../scheduling/localCP.sml
	../scheduling/buildLocalDDG.sig
	../scheduling/buildLocalDDG.sml
	../scheduling/bbScheduler.sig
	../scheduling/bbScheduler.sml
	../scheduling/bbDDGViewer.sig
	../scheduling/bbDDGViewer.sml
	../scheduling/clusterBBScheduler.sml

	(* Superscalar scheduling.  These are required if you want to
	 * play with instruction scheduling for superscalars.
	 * It requires the MLRISC IR stuff. !!!
	 *)
	../scheduling/listScheduler.sig
	../scheduling/listScheduler.sml
	../scheduling/buildDDG.sig
	../scheduling/buildDDG.sml
	../scheduling/schedulingAliasing.sig
	../scheduling/regionBuilder.sig
	../scheduling/regionBuilder.sml

	(* Various global scheduling algorithms *)
	../scheduling/globalCP.sml
	../scheduling/globalDDGViewer.sig
	../scheduling/globalDDGViewer.sml
	../scheduling/globalSchedulingAlgo.sig
	../scheduling/dagScheduling.sml
	../scheduling/globalScheduler.sml
SPARC.cm:
(* 
 * SPARC specific modules for MLRISC code generation framework.
 *)
        smlnj-lib.cm
	MLRISC.cm
	Control.cm
	Lib.cm

	(* Sparc specific backend *)
	../sparc/instructions/sparcCells.sml
	../sparc/instructions/sparcInstr.sml
	../sparc/instructions/sparcinstr-ext.sml
	../sparc/instructions/sparccomp-instr-ext.sml
	../sparc/instructions/sparcShuffle.sig
	../sparc/instructions/sparcShuffle.sml
	../sparc/instructions/sparcProps.sml
	../sparc/instructions/sparcFreqProps.sml
	../sparc/emit/sparcAsm.sml
	../sparc/emit/sparcMC.sml
	../sparc/backpatch/sparcJumps.sml
	../sparc/flowgraph/sparcGasPseudoOps.sml
	../sparc/mltree/sparcPseudoInstr.sig
	../sparc/mltree/sparc.sml 
	../sparc/ra/sparcRewrite.sml
	(* ../sparc/ra/sparcRegAlloc.sml *)
	../sparc/backpatch/sparcDelaySlotProps.sml
	../sparc/c-calls/sparc-c-calls.sml


SPARC-GC.cm:

        smlnj-lib.cm
	MLRISC.cm
	GC.cm
	SPARC.cm
	
	(* Sparc specific backend *)
SPARC-Peephole.cm:

	MLRISC.cm
	Peephole.cm
	SPARC.cm

	(* sparc *)
	../sparc/instructions/sparcPeephole.sml

SPARC-RTL.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	Region.cm
	SPARC.cm
	
	(* sparc specific backend *)
	../sparc/mltree/sparcRTL.sml 
	../sparc/mltree/sparcRTLProps.sml 

SPARC-Sched.cm:
(*
 * This library contains the superscalar scheduling stuff.
 *)

        smlnj-lib.cm
	Control.cm
	Lib.cm
	MLRISC.cm
	SPARC.cm
	Sched.cm
	Region.cm
	
	(* Sparc scheduler *) 
	../sparc/scheduling/sparcSchedProps.sml
SPARC-SSA.cm:

	smlnj-lib.cm
	Control.cm
	MLRISC.cm
	RTL.cm
	SSA.cm
	Region.cm
	SPARC.cm
	SPARC-RTL.cm
	
	(* sparc specific backend *)
	../sparc/SSA/sparcSSAProps.sml

SSA.cm:
(*
 *  This library implements the SSA optimizations.
 *)
        smlnj-lib.cm
	Control.cm
	Lib.cm
	Graphs.cm
	Visual.cm
	ir.cm
	MLRISC.cm
	IR.cm
	GC.cm
	MLTREE.cm
	RTL.cm
	Region.cm
	
	(* The SSA representation *)
	../SSA/SSA-flowgraph.sig
	../SSA/mlrisc-ssa.sig
	../SSA/mlrisc-ssa.sml
	../SSA/SSA-optimization.sig

	(* Machine specific properties *)
	../SSA/SSA-props.sig

        (* CFG <-> SSA *)
	../SSA/mlrisc-ssa-construction.sig
	../SSA/mlrisc-ssa-construction.sml
	../SSA/mlrisc-ssa-deconstruction.sig
	../SSA/mlrisc-ssa-deconstruction.sml

	../SSA/SSA-const-folding.sig
	../SSA/SSA-const-folding.sml

	../SSA/SSA-gvn-basis.sig
	../SSA/SSA-gvn-basis.sml

        (* Instruction selection *)
	../SSA/SSA-instrgen.sig
	../SSA/SSA-instrgen.sml

	(* Optimization phases *)
	../SSA/SSA-dead-code-elim.sml
	../SSA/SSA-cond-const-folding.sml
	../SSA/SSA-global-code-motion.sml
	../SSA/SSA-global-value-numbering.sml
	../SSA/SSA-operator-strength-reduction.sml

	../SSA/SSA-gc-invariants.sml


Visual.cm:

(*
 * This library implements visualization of graphs
 *)
	Control.cm
	Lib.cm
	Graphs.cm

	../visualization/allDisplays.sml
	../visualization/daVinci.sml
	../visualization/dot.sml
	../visualization/graphDisplay.sig
	../visualization/graphLayout.sml
	../visualization/graphViewer.sig
	../visualization/graphViewer.sml
	../visualization/vcg.sml

VLIW.cm:
(*
 * This library contains the VLIW based optimizations.
 *)

        smlnj-lib.cm
	Control.cm
	Lib.cm
	Graphs.cm
	Visual.cm
	ir.cm
	MLRISC.cm
	IR.cm
	
	../emit/emitterNEW.sig (* dummy *)
	
	(* ../VLIW/EPIC foundational stuff.
	 *)
	../instructions/funits.sig
	../instructions/datapaths.sig
	../instructions/pred-instructions.sig
	../instructions/vliw-instructions.sig
	../instructions/pred-vliw-instructions.sig
	../instructions/predicationProps.sig
	../instructions/vliwProps.sig
	
	(* Hyperblock and predicate analysis. 
	 * These are necessary if you want to play with optimizations
	 * for predicated for VLIW architectures.
	 *)
	../hyperblock/decision-trees.sig
	../hyperblock/decision-trees.sml
	../hyperblock/hyperblock.sig
	../hyperblock/hyperblock.sml
	../hyperblock/hyperblock-ddg.sig
	../hyperblock/hyperblock-ddg.sml
	../hyperblock/if-conversion.sig
	../hyperblock/if-conversion.sml
	../hyperblock/predicated-ddg.sig
	../hyperblock/predicated-ddg.sml
	
	(* Hyperblock Scheduling for VLIW 
	 * It requires the hyperblock, MLRISC IR and VLIW modules. !!!
	 *)
	../hyperblock-scheduling/critical-path.sml
	../hyperblock-scheduling/hyperblock-scheduling.sig
	../hyperblock-scheduling/hyperblock-scheduling.sml
	../hyperblock-scheduling/rank-algorithm.sig
	../hyperblock-scheduling/vliwSchedulingProps.sig
	../hyperblock-scheduling/vliwSchedulingAutomaton.sig
	
	(* Modulo Scheduling for VLIW
	 * It requires the hyperblock, MLRISC IR and VLIW modules. !!!
	 *)
	../modulo-scheduling/iterated-modulo-scheduling.sml
	../modulo-scheduling/modulo-scheduling-algo.sig
	../modulo-scheduling/modulo-scheduling.sig
	../modulo-scheduling/modulo-scheduling.sml
	../modulo-scheduling/mrt.sig
	../modulo-scheduling/mrt.sml
	../modulo-scheduling/pre-modulo-scheduling.sig
	../modulo-scheduling/pre-modulo-scheduling.sml
	
	(* C6 specific backend !!! *)
	../C6/instructions/C6Cells.sig
	../C6/instructions/C6Cells.sml
	../C6/instructions/C6Datapaths.sig
	../C6/instructions/C6Datapaths.sml
	(*C6/instructions/C6DatapathsProps.sml*)
	../C6/instructions/C6Funits.sig
	../C6/instructions/C6Funits.sml
	../C6/instructions/C6Instr.sig
	../C6/instructions/C6Instr.sml
	../C6/instructions/C6InstrClass.sig
	../C6/instructions/C6InstrClass.sml
	../C6/instructions/C6Intrinsics.sig
	../C6/instructions/C6Intrinsics.sml
	../C6/instructions/C6PredicationProps.sml
	../C6/instructions/C6Props.sml
	../C6/instructions/C6PseudoOps.sig
	../C6/instructions/C6PseudoOps.sml
	../C6/instructions/C6Shuffle.sig
	../C6/instructions/C6Shuffle.sml
	../C6/instructions/C6VLIWProps.sml
	../C6/emit/C6Asm.sml
	(*C6/scheduling/C6RTDEFS.sml
	C6/scheduling/C6RTDEFS2.sml
	C6/scheduling/C6RTTables.sml
	C6/scheduling/C6RTTables2.sml*)
	../C6/scheduling/C6SchedulingProps.sml
	(* ../C6/SSA/C6SSAProps.sml *)

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