aboutsummaryrefslogtreecommitdiffstats
path: root/tools/compiler_expand.ml
diff options
context:
space:
mode:
Diffstat (limited to 'tools/compiler_expand.ml')
-rw-r--r--tools/compiler_expand.ml10
1 files changed, 2 insertions, 8 deletions
diff --git a/tools/compiler_expand.ml b/tools/compiler_expand.ml
index a0809296..dfadca3b 100644
--- a/tools/compiler_expand.ml
+++ b/tools/compiler_expand.ml
@@ -67,22 +67,16 @@ let post_rtl_passes =
(* This is meant to clean up dead code afer "if-lifting" + removing of redundant condition *)
PARTIAL, (Option "optim_redundancy"), Require, (Some "Redundancy elimination"), "Deadcode", Noprint;
- (* Actual CSE3 pass *)
- TOTAL, Always, NoRequire, (Some "Renumbering pre CSE"), "Renumber", Noprint;
- PARTIAL, (Option "optim_CSE3"), Require, (Some "CSE3"), "CSE3", Noprint;
- TOTAL, (Option "optim_CSE3"), Require, (Some "Kill useless moves after CSE3"), "KillUselessMoves", Noprint;
- (* TOTAL, (Option "optim_forward_moves"), Require, (Some "Forwarding moves"), "ForwardMoves", Noprint; *)
- PARTIAL, (Option "optim_redundancy"), Require, (Some "Redundancy elimination"), "Deadcode", Noprint;
-
PARTIAL, Always, Require, (Some "RTLpath generation"), "RTLpathLivegen", Noprint;
PARTIAL, Always, Require, (Some "Prepass scheduling"), "RTLpathScheduler", Noprint;
TOTAL, Always, Require, (Some "Projection to RTL"), "RTLpath", (Print (Printf.sprintf "RTL %d" ((Array.length rtl_passes) + 1)));
+ (* Run CSE3 again, in case code is moved up again *)
TOTAL, Always, NoRequire, (Some "Renumbering pre CSE"), "Renumber", Noprint;
PARTIAL, (Option "optim_CSE3"), Require, (Some "CSE3"), "CSE3", Noprint;
TOTAL, (Option "optim_CSE3"), Require, (Some "Kill useless moves after CSE3"), "KillUselessMoves", Noprint;
TOTAL, (Option "optim_forward_moves"), Require, (Some "Forwarding moves"), "ForwardMoves", Noprint;
- (* PARTIAL, (Option "optim_redundancy"), Require, (Some "Redundancy elimination"), "Deadcode", Noprint; *)
+ PARTIAL, (Option "optim_redundancy"), Require, (Some "Redundancy elimination"), "Deadcode", Noprint;
PARTIAL, Always, Require, (Some "Register allocation"), "Allocation", (Print "LTL 1");
PARTIAL, Always, Require, (Some "LTL Branch tunneling"), "LTLTunneling", (Print "LTL 2");