comparison src/share/vm/opto/node.hpp @ 23660:b5f3a471e646

Merge.
author Doug Simon <doug.simon@oracle.com>
date Wed, 01 Jun 2016 00:11:44 +0200
parents dd9cc155639c 7c5babab479b
children f13e777eb255
comparison
equal deleted inserted replaced
23411:d7cf78885a3a 23660:b5f3a471e646
292 // Grow the output array to the next larger power-of-2 bigger than len. 292 // Grow the output array to the next larger power-of-2 bigger than len.
293 void out_grow( uint len ); 293 void out_grow( uint len );
294 294
295 public: 295 public:
296 // Each Node is assigned a unique small/dense number. This number is used 296 // Each Node is assigned a unique small/dense number. This number is used
297 // to index into auxiliary arrays of data and bitvectors. 297 // to index into auxiliary arrays of data and bit vectors.
298 // It is declared const to defend against inadvertant assignment, 298 // The field _idx is declared constant to defend against inadvertent assignments,
299 // since it is used by clients as a naked field. 299 // since it is used by clients as a naked field. However, the field's value can be
300 // changed using the set_idx() method.
301 //
302 // The PhaseRenumberLive phase renumbers nodes based on liveness information.
303 // Therefore, it updates the value of the _idx field. The parse-time _idx is
304 // preserved in _parse_idx.
300 const node_idx_t _idx; 305 const node_idx_t _idx;
306 DEBUG_ONLY(const node_idx_t _parse_idx;)
301 307
302 // Get the (read-only) number of input edges 308 // Get the (read-only) number of input edges
303 uint req() const { return _cnt; } 309 uint req() const { return _cnt; }
304 uint len() const { return _max; } 310 uint len() const { return _max; }
305 // Get the (read-only) number of output edges 311 // Get the (read-only) number of output edges
1366 Node *pop() { return _nodes[--_cnt]; } 1372 Node *pop() { return _nodes[--_cnt]; }
1367 Node *rpop() { Node *b = _nodes[0]; _nodes[0]=_nodes[--_cnt]; return b;} 1373 Node *rpop() { Node *b = _nodes[0]; _nodes[0]=_nodes[--_cnt]; return b;}
1368 void clear() { _cnt = 0; Node_Array::clear(); } // retain storage 1374 void clear() { _cnt = 0; Node_Array::clear(); } // retain storage
1369 uint size() const { return _cnt; } 1375 uint size() const { return _cnt; }
1370 void dump() const; 1376 void dump() const;
1377 void dump_simple() const;
1371 }; 1378 };
1372 1379
1373 //------------------------------Unique_Node_List------------------------------- 1380 //------------------------------Unique_Node_List-------------------------------
1374 class Unique_Node_List : public Node_List { 1381 class Unique_Node_List : public Node_List {
1375 friend class VMStructs; 1382 friend class VMStructs;