111 |
111 |
112 // Convert a stack offset to a register number |
112 // Convert a stack offset to a register number |
113 OptoReg::Name offset2reg( int stk_offset ) const; |
113 OptoReg::Name offset2reg( int stk_offset ) const; |
114 |
114 |
115 // Get the register encoding associated with the Node |
115 // Get the register encoding associated with the Node |
116 int get_encode( const Node *n ) const { |
116 int get_encode(const Node *n) const { |
117 assert( n->_idx < _node_regs_max_index, "Exceeded _node_regs array"); |
117 assert( n->_idx < _node_regs_max_index, "Exceeded _node_regs array"); |
118 OptoReg::Name first = _node_regs[n->_idx].first(); |
118 OptoReg::Name first = _node_regs[n->_idx].first(); |
119 OptoReg::Name second = _node_regs[n->_idx].second(); |
119 OptoReg::Name second = _node_regs[n->_idx].second(); |
120 assert( !OptoReg::is_valid(second) || second == first+1, "" ); |
120 assert( !OptoReg::is_valid(second) || second == first+1, "" ); |
121 assert(OptoReg::is_reg(first), "out of range"); |
121 assert(OptoReg::is_reg(first), "out of range"); |
122 return Matcher::_regEncode[first]; |
122 return Matcher::_regEncode[first]; |
123 } |
123 } |
124 |
|
125 // Platform dependent hook for actions prior to allocation |
|
126 void pd_preallocate_hook(); |
|
127 |
|
128 #ifdef ASSERT |
|
129 // Platform dependent hook for verification after allocation. Will |
|
130 // only get called when compiling with asserts. |
|
131 void pd_postallocate_verify_hook(); |
|
132 #endif |
|
133 |
124 |
134 #ifndef PRODUCT |
125 #ifndef PRODUCT |
135 static int _total_framesize; |
126 static int _total_framesize; |
136 static int _max_framesize; |
127 static int _max_framesize; |
137 |
128 |