src/share/vm/opto/chaitin.hpp

Print this page
rev 4266 : 8009721: Make PhaseLive independent from regalloc
Summary: Moved class definition of LRG_List from chaitin.hpp to live.hpp
Reviewed-by:
Contributed-by: niclas.adlertz@oracle.com

*** 185,219 **** #ifndef PRODUCT void dump( ) const; #endif }; - //------------------------------LRG_List--------------------------------------- - // Map Node indices to Live RanGe indices. - // Array lookup in the optimized case. - class LRG_List : public ResourceObj { - friend class VMStructs; - uint _cnt, _max; - uint* _lidxs; - ReallocMark _nesting; // assertion check for reallocations - public: - LRG_List( uint max ); - - uint lookup( uint nidx ) const { - return _lidxs[nidx]; - } - uint operator[] (uint nidx) const { return lookup(nidx); } - - void map( uint nidx, uint lidx ) { - assert( nidx < _cnt, "oob" ); - _lidxs[nidx] = lidx; - } - void extend( uint nidx, uint lidx ); - - uint Size() const { return _cnt; } - }; - //------------------------------IFG-------------------------------------------- // InterFerence Graph // An undirected graph implementation. Created with a fixed number of // vertices. Edges can be added & tested. Vertices can be removed, then // added back later with all edges intact. Can add edges between one vertex --- 185,194 ----