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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 744 - (view) (download)

1 : leunga 744 (*
2 :     * This library implements the SSA optimizations.
3 :     *)
4 :    
5 :     Library
6 :     signature CFG2SSA
7 :     signature SSA
8 :     signature SSA2CFG
9 :     signature SSA_CONDITIONAL_CONSTANT_PROPAGATION
10 :     signature SSA_CONSTANT_FOLDING
11 :     signature SSA_DATAFLOW_ANALYSIS
12 :     signature SSA_FLOWGRAPH
13 :     signature SSA_FLOWGRAPH_LIVENESS
14 :     signature SSA_GLOBAL_CODE_MOTION
15 :     signature SSA_GLOBAL_VALUE_NUMBERING
16 :     signature SSA_INSTRGEN
17 :     signature SSA_LIVENESS
18 :     signature SSA_OPTIMIZATION
19 :     signature SSA_PROPERTIES
20 :     functor CFG2SSA
21 :     functor SSA
22 :     functor SSA2CFG
23 :     functor SSACCP
24 :     functor SSACPR
25 :     functor SSACondConstProp
26 :     functor SSAConstantFolding
27 :     functor SSADCE
28 :     functor SSADataflow
29 :     functor SSAGCInvariants
30 :     functor SSAGCM
31 :     functor SSAGVN
32 :     functor SSAGlobalValueNumbering
33 :     functor SSAInstrGen
34 :     functor SSALiveness
35 :     functor SSAOSR
36 :     functor SSAPRE
37 :     functor SSAUntrap
38 :     is
39 :    
40 :     #if defined(NEW_CM)
41 :     #if SMLNJ_VERSION * 100 + SMLNJ_MINOR_VERSION >= 11030
42 :     $/basis.cm
43 :     $/smlnj-lib.cm
44 :     #else
45 :     basis.cm
46 :     smlnj-lib.cm
47 :     #endif
48 :     #else
49 :     smlnj-lib.cm
50 :     #endif
51 :    
52 :    
53 :     Control.cm
54 :     Lib.cm
55 :     Graphs.cm
56 :     Visual.cm
57 :     ir.cm
58 :     MLRISC.cm
59 :     IR.cm
60 :     GC.cm
61 :     MLTREE.cm
62 :     RTL.cm
63 :     Region.cm
64 :    
65 :     (* The SSA representation *)
66 :     ../SSA/ssa-flowgraph.sig
67 :     ../SSA/ssa.sig
68 :     ../SSA/ssa.sml
69 :    
70 :     (* Conversion between SSA and CFG *)
71 :     ../SSA/cfg2ssa.sig
72 :     ../SSA/cfg2ssa.sml
73 :     ../SSA/ssa2cfg.sig
74 :     ../SSA/ssa2cfg.sml
75 :     ../SSA/ssa-liveness.sig
76 :     ../SSA/ssa-liveness.sml
77 :    
78 :     (* Build an SSA graph directly (doesn't work!) *)
79 :     (* ../SSA/ssa-gen.sml 110.0.6 bug *)
80 :    
81 :     (* Machine properties for SSA *)
82 :     ../SSA/ssa-props.sig
83 :    
84 :     (*==== Analyses and transformations on SSA ====*)
85 :    
86 :     (* Constant folding and algebraic simplification *)
87 :     ../SSA/ssa-const-folding.sig
88 :     ../SSA/ssa-const-folding.sml
89 :    
90 :     (* Compute global value numbers *)
91 :     ../SSA/ssa-gvn-basis.sig
92 :     ../SSA/ssa-gvn-basis.sml
93 :    
94 :     (* Compute conditional constants *)
95 :     ../SSA/ssa-ccp-basis.sig
96 :     ../SSA/ssa-ccp-basis.sml
97 :    
98 :     (* Dataflow analysis *)
99 :     ../SSA/ssa-dataflow.sig
100 :     ../SSA/ssa-dataflow.sml
101 :    
102 :     (* Instruction generation *)
103 :     ../SSA/ssa-instrgen.sig
104 :     ../SSA/ssa-instrgen.sml
105 :    
106 :     (*==== Actual Optimization Phases ====*)
107 :     ../SSA/ssa-optimization.sig
108 :    
109 :     (* Dead code elimination *)
110 :     ../SSA/ssa-dce.sml
111 :    
112 :     (* Global code motion *)
113 :     ../SSA/ssa-gcm.sml
114 :    
115 :     (* Global value numbering *)
116 :     ../SSA/ssa-gvn.sml
117 :    
118 :     (* Operator Strength Reduction *)
119 :     ../SSA/ssa-osr.sml
120 :    
121 :     (* Conditional Constant Propagation *)
122 :     ../SSA/ssa-ccp.sml
123 :    
124 :     (* Critical Path Reduction *)
125 :     ../SSA/ssa-cpr.sml
126 :    
127 :     (* Remove Trapping Arithmetic *)
128 :     ../SSA/ssa-untrap.sml
129 :    
130 :     (* Partial Redundancy Elimination *)
131 :     ../SSA/ssa-pre.sml
132 :    
133 :     (* GC Safety *)
134 :     ../SSA/ssa-gc-invariants.sml

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