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

Annotation of /sml/trunk/src/MLRISC/cm/VLIW.cm

Parent Directory Parent Directory | Revision Log Revision Log


Revision 744 - (view) (download)

1 : leunga 744 (*
2 :     * This library contains the VLIW based optimizations.
3 :     *)
4 :    
5 :     Library
6 :     signature C6CELLS
7 :     signature C6DATAPATHS
8 :     signature C6FUNITS
9 :     signature C6INSTR
10 :     signature C6INSTRCLASS
11 :     signature C6INTRINSICS
12 :     signature C6PSEUDO_OPS
13 :     signature C6SHUFFLE
14 :     signature DATAPATHS
15 :     signature DECISION_TREES
16 :     signature FUNITS
17 :     signature HYPERBLOCK
18 :     signature HYPERBLOCK_SCHEDULING
19 :     signature IF_CONVERSION
20 :     signature MODULO_RESERVATION_TABLE
21 :     signature MODULO_SCHEDULING
22 :     signature MODULO_SCHEDULING_ALGORITHM
23 :     signature PREDICATED_DDG
24 :     signature PREDICATED_DDG_BUILDER
25 :     signature PREDICATED_INSTRUCTIONS
26 :     signature PREDICATED_VLIW_INSTRUCTIONS
27 :     signature PREDICATION_PROPERTIES
28 :     signature PRE_MODULO_SCHEDULING
29 :     signature RANKING_ALGORITHM
30 :     signature VLIW_INSTRUCTIONS
31 :     signature VLIW_PROPERTIES
32 :     signature VLIW_SCHEDULING_AUTOMATON
33 :     signature VLIW_SCHEDULING_PROPERTIES
34 :     structure C6Cells
35 :     structure C6Datapaths
36 :     structure C6Funits
37 :     structure C6Intrinsics
38 :     structure DecisionTrees
39 :     functor C6AsmEmitter
40 :     functor C6Instr
41 :     functor C6InstrClass
42 :     functor C6PredicationProps
43 :     functor C6Props
44 :     functor C6PseudoOps
45 :     functor C6SchedulingProps
46 :     functor C6Shuffle
47 :     functor C6VLIWProps
48 :     functor CriticalPath
49 :     functor Hyperblock
50 :     functor HyperblockScheduling
51 :     functor IfConversion
52 :     functor IteratedModuloScheduling
53 :     functor ModuloReservationTable
54 :     functor ModuloScheduling
55 :     functor PreModuloScheduling
56 :     functor PredicatedDDG
57 :     functor PredicatedDDGBuilder
58 :     is
59 :    
60 :     #if defined(NEW_CM)
61 :     #if SMLNJ_VERSION * 100 + SMLNJ_MINOR_VERSION >= 11030
62 :     $/basis.cm
63 :     $/smlnj-lib.cm
64 :     #else
65 :     basis.cm
66 :     smlnj-lib.cm
67 :     #endif
68 :     #else
69 :     smlnj-lib.cm
70 :     #endif
71 :    
72 :    
73 :     Control.cm
74 :     Lib.cm
75 :     Graphs.cm
76 :     Visual.cm
77 :     ir.cm
78 :     MLRISC.cm
79 :     IR.cm
80 :    
81 :     ../emit/emitterNEW.sig (* dummy *)
82 :    
83 :     (* ../VLIW/EPIC foundational stuff.
84 :     *)
85 :     ../instructions/funits.sig
86 :     ../instructions/datapaths.sig
87 :     ../instructions/pred-instructions.sig
88 :     ../instructions/vliw-instructions.sig
89 :     ../instructions/pred-vliw-instructions.sig
90 :     ../instructions/predicationProps.sig
91 :     ../instructions/vliwProps.sig
92 :    
93 :     (* Hyperblock and predicate analysis.
94 :     * These are necessary if you want to play with optimizations
95 :     * for predicated for VLIW architectures.
96 :     *)
97 :     ../hyperblock/decision-trees.sig
98 :     ../hyperblock/decision-trees.sml
99 :     ../hyperblock/hyperblock.sig
100 :     ../hyperblock/hyperblock.sml
101 :     ../hyperblock/hyperblock-ddg.sig
102 :     ../hyperblock/hyperblock-ddg.sml
103 :     ../hyperblock/if-conversion.sig
104 :     ../hyperblock/if-conversion.sml
105 :     ../hyperblock/predicated-ddg.sig
106 :     ../hyperblock/predicated-ddg.sml
107 :    
108 :     (* Hyperblock Scheduling for VLIW
109 :     * It requires the hyperblock, MLRISC IR and VLIW modules. !!!
110 :     *)
111 :     ../hyperblock-scheduling/critical-path.sml
112 :     ../hyperblock-scheduling/hyperblock-scheduling.sig
113 :     ../hyperblock-scheduling/hyperblock-scheduling.sml
114 :     ../hyperblock-scheduling/rank-algorithm.sig
115 :     ../hyperblock-scheduling/vliwSchedulingProps.sig
116 :     ../hyperblock-scheduling/vliwSchedulingAutomaton.sig
117 :    
118 :     (* Modulo Scheduling for VLIW
119 :     * It requires the hyperblock, MLRISC IR and VLIW modules. !!!
120 :     *)
121 :     ../modulo-scheduling/iterated-modulo-scheduling.sml
122 :     ../modulo-scheduling/modulo-scheduling-algo.sig
123 :     ../modulo-scheduling/modulo-scheduling.sig
124 :     ../modulo-scheduling/modulo-scheduling.sml
125 :     ../modulo-scheduling/mrt.sig
126 :     ../modulo-scheduling/mrt.sml
127 :     ../modulo-scheduling/pre-modulo-scheduling.sig
128 :     ../modulo-scheduling/pre-modulo-scheduling.sml
129 :    
130 :     (* C6 specific backend !!! *)
131 :     ../C6/instructions/C6Cells.sig
132 :     ../C6/instructions/C6Cells.sml
133 :     ../C6/instructions/C6Datapaths.sig
134 :     ../C6/instructions/C6Datapaths.sml
135 :     (*C6/instructions/C6DatapathsProps.sml*)
136 :     ../C6/instructions/C6Funits.sig
137 :     ../C6/instructions/C6Funits.sml
138 :     ../C6/instructions/C6Instr.sig
139 :     ../C6/instructions/C6Instr.sml
140 :     ../C6/instructions/C6InstrClass.sig
141 :     ../C6/instructions/C6InstrClass.sml
142 :     ../C6/instructions/C6Intrinsics.sig
143 :     ../C6/instructions/C6Intrinsics.sml
144 :     ../C6/instructions/C6PredicationProps.sml
145 :     ../C6/instructions/C6Props.sml
146 :     ../C6/instructions/C6PseudoOps.sig
147 :     ../C6/instructions/C6PseudoOps.sml
148 :     ../C6/instructions/C6Shuffle.sig
149 :     ../C6/instructions/C6Shuffle.sml
150 :     ../C6/instructions/C6VLIWProps.sml
151 :     ../C6/emit/C6Asm.sml
152 :     (*C6/scheduling/C6RTDEFS.sml
153 :     C6/scheduling/C6RTDEFS2.sml
154 :     C6/scheduling/C6RTTables.sml
155 :     C6/scheduling/C6RTTables2.sml*)
156 :     ../C6/scheduling/C6SchedulingProps.sml
157 :     (* ../C6/SSA/C6SSAProps.sml *)

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