mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-25 13:54:38 +02:00
Merge
This commit is contained in:
commit
d1b60c9f04
2 changed files with 25 additions and 26 deletions
|
@ -187,31 +187,6 @@ public:
|
|||
#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
|
||||
|
|
|
@ -33,11 +33,35 @@
|
|||
#include "opto/regmask.hpp"
|
||||
|
||||
class Block;
|
||||
class LRG_List;
|
||||
class PhaseCFG;
|
||||
class VectorSet;
|
||||
class IndexSet;
|
||||
|
||||
//------------------------------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; }
|
||||
};
|
||||
|
||||
//------------------------------PhaseLive--------------------------------------
|
||||
// Compute live-in/live-out
|
||||
class PhaseLive : public Phase {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue