38 Parser, // Parse bytecodes |
38 Parser, // Parse bytecodes |
39 Remove_Useless, // Remove useless nodes |
39 Remove_Useless, // Remove useless nodes |
40 Optimistic, // Optimistic analysis phase |
40 Optimistic, // Optimistic analysis phase |
41 GVN, // Pessimistic global value numbering phase |
41 GVN, // Pessimistic global value numbering phase |
42 Ins_Select, // Instruction selection phase |
42 Ins_Select, // Instruction selection phase |
43 Copy_Elimination, // Copy Elimination |
|
44 Dead_Code_Elimination, // DCE and compress Nodes |
|
45 Conditional_Constant, // Conditional Constant Propagation |
|
46 CFG, // Build a CFG |
43 CFG, // Build a CFG |
47 DefUse, // Build Def->Use chains |
44 BlockLayout, // Linear ordering of blocks |
48 Register_Allocation, // Register allocation, duh |
45 Register_Allocation, // Register allocation, duh |
49 LIVE, // Dragon-book LIVE range problem |
46 LIVE, // Dragon-book LIVE range problem |
50 Interference_Graph, // Building the IFG |
47 Interference_Graph, // Building the IFG |
51 Coalesce, // Coalescing copies |
48 Coalesce, // Coalescing copies |
52 Conditional_CProp, // Conditional Constant Propagation |
|
53 Ideal_Loop, // Find idealized trip-counted loops |
49 Ideal_Loop, // Find idealized trip-counted loops |
54 Macro_Expand, // Expand macro nodes |
50 Macro_Expand, // Expand macro nodes |
55 Peephole, // Apply peephole optimizations |
51 Peephole, // Apply peephole optimizations |
56 last_phase |
52 last_phase |
57 }; |
53 }; |
78 static elapsedTimer _t_output; |
74 static elapsedTimer _t_output; |
79 |
75 |
80 #ifndef PRODUCT |
76 #ifndef PRODUCT |
81 static elapsedTimer _t_graphReshaping; |
77 static elapsedTimer _t_graphReshaping; |
82 static elapsedTimer _t_scheduler; |
78 static elapsedTimer _t_scheduler; |
83 static elapsedTimer _t_removeEmptyBlocks; |
79 static elapsedTimer _t_blockOrdering; |
84 static elapsedTimer _t_macroExpand; |
80 static elapsedTimer _t_macroExpand; |
85 static elapsedTimer _t_peephole; |
81 static elapsedTimer _t_peephole; |
86 static elapsedTimer _t_codeGeneration; |
82 static elapsedTimer _t_codeGeneration; |
87 static elapsedTimer _t_registerMethod; |
83 static elapsedTimer _t_registerMethod; |
88 static elapsedTimer _t_temporaryTimer1; |
84 static elapsedTimer _t_temporaryTimer1; |