diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/compiler_expand.ml | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/compiler_expand.ml b/tools/compiler_expand.ml index 5c90af6c..45ffc828 100644 --- a/tools/compiler_expand.ml +++ b/tools/compiler_expand.ml @@ -13,6 +13,8 @@ type print_result = Noprint | Print of string;; type when_triggered = Always | Option of string;; type needs_require = Require | NoRequire;; +let rtl_tunneling = PARTIAL, Always, Require, (Some "RTL Branch Tunneling"), "RTLTunneling" + (* FIXME - The gestion of NoRequire is a bit ugly right now. *) let rtl_passes = [| @@ -38,6 +40,7 @@ PARTIAL, (Option "optim_CSE3"), Require, (Some "CSE3"), "CSE3"; TOTAL, (Option "optim_CSE3"), Require, (Some "Kill useless moves after CSE3"), "KillUselessMoves"; TOTAL, (Option "optim_forward_moves"), Require, (Some "Forwarding moves"), "ForwardMoves"; PARTIAL, (Option "optim_redundancy"), Require, (Some "Redundancy elimination"), "Deadcode"; +rtl_tunneling; TOTAL, Always, Require, (Some "Renumbering pre rotate"), "Renumber"; PARTIAL, Always, NoRequire, (Some "Loop Rotate"), "Looprotate"; TOTAL, (Option "optim_move_loop_invariants"), NoRequire, (Some "Renumbering for LICM"), "Renumber"; @@ -46,7 +49,7 @@ TOTAL, (Option "optim_move_loop_invariants"), NoRequire, (Some "Renumbering for PARTIAL, (Option "optim_move_loop_invariants"), NoRequire, (Some "CSE3 for LICM"), "CSE3"; PARTIAL, (Option "optim_move_loop_invariants"), NoRequire, (Some "Redundancy elimination for LICM"), "Deadcode"; TOTAL, (Option "all_loads_nontrap"), Require, None, "Allnontrap"; -PARTIAL, Always, Require, (Some "Unused globals"), "Unusedglob" +PARTIAL, Always, Require, (Some "Unused globals"), "Unusedglob"; |];; let post_rtl_passes = @@ -55,7 +58,7 @@ let post_rtl_passes = PARTIAL, Always, Require, (Some "Prepass scheduling"), "BTL_Scheduler", Noprint; PARTIAL, Always, Require, (Some "Projection to RTL"), "BTLtoRTL", (Print (Printf.sprintf "RTL %d" ((Array.length rtl_passes) + 1))); PARTIAL, Always, Require, (Some "Register allocation"), "Allocation", (Print "LTL 1"); - PARTIAL, Always, Require, (Some "Branch tunneling"), "Tunneling", (Print "LTL 2"); + PARTIAL, Always, Require, (Some "LTL Branch tunneling"), "LTLTunneling", (Print "LTL 2"); PARTIAL, Always, Require, (Some "CFG linearization"), "Linearize", Noprint; TOTAL, Always, Require, (Some "Label cleanup"), "CleanupLabels", Noprint; PARTIAL, (Option "debug"), Require, (Some "Debugging info for local variables"), "Debugvar", Noprint; |