79 80 private: 81 // Arena to use 82 Arena *_arena; 83 84 // Control-Flow Graph info 85 PhaseCFG *_cfg; 86 87 // Register Allocation info 88 PhaseRegAlloc *_regalloc; 89 90 // Number of nodes in the method 91 uint _node_bundling_limit; 92 93 // List of scheduled nodes. Generated in reverse order 94 Node_List _scheduled; 95 96 // List of nodes currently available for choosing for scheduling 97 Node_List _available; 98 99 // Mapping from node (index) to basic block 100 Block_Array& _bbs; 101 102 // For each instruction beginning a bundle, the number of following 103 // nodes to be bundled with it. 104 Bundle *_node_bundling_base; 105 106 // Mapping from register to Node 107 Node_List _reg_node; 108 109 // Free list for pinch nodes. 110 Node_List _pinch_free_list; 111 112 // Latency from the beginning of the containing basic block (base 1) 113 // for each node. 114 unsigned short *_node_latency; 115 116 // Number of uses of this node within the containing basic block. 117 short *_uses; 118 119 // Schedulable portion of current block. Skips Region/Phi/CreateEx up 120 // front, branch+proj at end. Also skips Catch/CProj (same as 121 // branch-at-end), plus just-prior exception-throwing call. | 79 80 private: 81 // Arena to use 82 Arena *_arena; 83 84 // Control-Flow Graph info 85 PhaseCFG *_cfg; 86 87 // Register Allocation info 88 PhaseRegAlloc *_regalloc; 89 90 // Number of nodes in the method 91 uint _node_bundling_limit; 92 93 // List of scheduled nodes. Generated in reverse order 94 Node_List _scheduled; 95 96 // List of nodes currently available for choosing for scheduling 97 Node_List _available; 98 99 // For each instruction beginning a bundle, the number of following 100 // nodes to be bundled with it. 101 Bundle *_node_bundling_base; 102 103 // Mapping from register to Node 104 Node_List _reg_node; 105 106 // Free list for pinch nodes. 107 Node_List _pinch_free_list; 108 109 // Latency from the beginning of the containing basic block (base 1) 110 // for each node. 111 unsigned short *_node_latency; 112 113 // Number of uses of this node within the containing basic block. 114 short *_uses; 115 116 // Schedulable portion of current block. Skips Region/Phi/CreateEx up 117 // front, branch+proj at end. Also skips Catch/CProj (same as 118 // branch-at-end), plus just-prior exception-throwing call. |