6700941: G1: allocation spec missing for some G1 classes

Reviewed-by: tonyp
This commit is contained in:
Andrey Petrusenko 2009-02-10 18:39:09 +03:00
parent 0badccf962
commit a7da5440dd
12 changed files with 22 additions and 21 deletions

View file

@ -24,7 +24,7 @@
// We need to sort heap regions by collection desirability. // We need to sort heap regions by collection desirability.
class CSetChooserCache { class CSetChooserCache VALUE_OBJ_CLASS_SPEC {
private: private:
enum { enum {
CacheLength = 16 CacheLength = 16

View file

@ -33,7 +33,7 @@ enum PostYieldAction {
PYA_cancel // It's been completed by somebody else: cancel. PYA_cancel // It's been completed by somebody else: cancel.
}; };
class ConcurrentG1Refine { class ConcurrentG1Refine: public CHeapObj {
ConcurrentG1RefineThread* _cg1rThread; ConcurrentG1RefineThread* _cg1rThread;
volatile jint _pya; volatile jint _pya;

View file

@ -30,7 +30,7 @@ typedef GenericTaskQueueSet<oop> CMTaskQueueSet;
// A generic CM bit map. This is essentially a wrapper around the BitMap // A generic CM bit map. This is essentially a wrapper around the BitMap
// class, with one bit per (1<<_shifter) HeapWords. // class, with one bit per (1<<_shifter) HeapWords.
class CMBitMapRO { class CMBitMapRO VALUE_OBJ_CLASS_SPEC {
protected: protected:
HeapWord* _bmStartWord; // base address of range covered by map HeapWord* _bmStartWord; // base address of range covered by map
size_t _bmWordSize; // map size (in #HeapWords covered) size_t _bmWordSize; // map size (in #HeapWords covered)
@ -139,7 +139,7 @@ class CMBitMap : public CMBitMapRO {
// Represents a marking stack used by the CM collector. // Represents a marking stack used by the CM collector.
// Ideally this should be GrowableArray<> just like MSC's marking stack(s). // Ideally this should be GrowableArray<> just like MSC's marking stack(s).
class CMMarkStack { class CMMarkStack VALUE_OBJ_CLASS_SPEC {
ConcurrentMark* _cm; ConcurrentMark* _cm;
oop* _base; // bottom of stack oop* _base; // bottom of stack
jint _index; // one more than last occupied index jint _index; // one more than last occupied index
@ -237,7 +237,7 @@ class CMMarkStack {
void oops_do(OopClosure* f); void oops_do(OopClosure* f);
}; };
class CMRegionStack { class CMRegionStack VALUE_OBJ_CLASS_SPEC {
MemRegion* _base; MemRegion* _base;
jint _capacity; jint _capacity;
jint _index; jint _index;
@ -312,7 +312,7 @@ typedef enum {
class ConcurrentMarkThread; class ConcurrentMarkThread;
class ConcurrentMark { class ConcurrentMark: public CHeapObj {
friend class ConcurrentMarkThread; friend class ConcurrentMarkThread;
friend class CMTask; friend class CMTask;
friend class CMBitMapClosure; friend class CMBitMapClosure;

View file

@ -49,7 +49,7 @@ public: \
class MainBodySummary; class MainBodySummary;
class PopPreambleSummary; class PopPreambleSummary;
class PauseSummary { class PauseSummary: public CHeapObj {
define_num_seq(total) define_num_seq(total)
define_num_seq(other) define_num_seq(other)
@ -58,7 +58,7 @@ public:
virtual PopPreambleSummary* pop_preamble_summary() { return NULL; } virtual PopPreambleSummary* pop_preamble_summary() { return NULL; }
}; };
class MainBodySummary { class MainBodySummary: public CHeapObj {
define_num_seq(satb_drain) // optional define_num_seq(satb_drain) // optional
define_num_seq(parallel) // parallel only define_num_seq(parallel) // parallel only
define_num_seq(ext_root_scan) define_num_seq(ext_root_scan)
@ -75,7 +75,7 @@ class MainBodySummary {
define_num_seq(clear_ct) // parallel only define_num_seq(clear_ct) // parallel only
}; };
class PopPreambleSummary { class PopPreambleSummary: public CHeapObj {
define_num_seq(pop_preamble) define_num_seq(pop_preamble)
define_num_seq(pop_update_rs) define_num_seq(pop_update_rs)
define_num_seq(pop_scan_rs) define_num_seq(pop_scan_rs)

View file

@ -28,7 +28,7 @@
/***** ALL TIMES ARE IN SECS!!!!!!! *****/ /***** ALL TIMES ARE IN SECS!!!!!!! *****/
// this is the "interface" // this is the "interface"
class G1MMUTracker { class G1MMUTracker: public CHeapObj {
protected: protected:
double _time_slice; double _time_slice;
double _max_gc_time; // this is per time slice double _max_gc_time; // this is per time slice
@ -67,7 +67,7 @@ public:
} }
}; };
class G1MMUTrackerQueueElem { class G1MMUTrackerQueueElem VALUE_OBJ_CLASS_SPEC {
private: private:
double _start_time; double _start_time;
double _end_time; double _end_time;

View file

@ -30,7 +30,7 @@ class CardTableModRefBarrierSet;
class HRInto_G1RemSet; class HRInto_G1RemSet;
class ConcurrentG1Refine; class ConcurrentG1Refine;
class G1RemSet { class G1RemSet: public CHeapObj {
protected: protected:
G1CollectedHeap* _g1; G1CollectedHeap* _g1;

View file

@ -833,7 +833,7 @@ class HeapRegionClosure : public StackObj {
// A linked lists of heap regions. It leaves the "next" field // A linked lists of heap regions. It leaves the "next" field
// unspecified; that's up to subtypes. // unspecified; that's up to subtypes.
class RegionList { class RegionList VALUE_OBJ_CLASS_SPEC {
protected: protected:
virtual HeapRegion* get_next(HeapRegion* chr) = 0; virtual HeapRegion* get_next(HeapRegion* chr) = 0;
virtual void set_next(HeapRegion* chr, virtual void set_next(HeapRegion* chr,

View file

@ -58,7 +58,7 @@ class SparsePRT;
// is represented. If a deleted PRT is re-used, a thread adding a bit, // is represented. If a deleted PRT is re-used, a thread adding a bit,
// thinking the PRT is for a different region, does no harm. // thinking the PRT is for a different region, does no harm.
class OtherRegionsTable: public CHeapObj { class OtherRegionsTable VALUE_OBJ_CLASS_SPEC {
friend class HeapRegionRemSetIterator; friend class HeapRegionRemSetIterator;
G1CollectedHeap* _g1h; G1CollectedHeap* _g1h;

View file

@ -29,7 +29,7 @@
class PtrQueueSet; class PtrQueueSet;
class PtrQueue: public CHeapObj { class PtrQueue VALUE_OBJ_CLASS_SPEC {
protected: protected:
// The ptr queue set to which this queue belongs. // The ptr queue set to which this queue belongs.
@ -130,7 +130,7 @@ public:
// In particular, the individual queues allocate buffers from this shared // In particular, the individual queues allocate buffers from this shared
// set, and return completed buffers to the set. // set, and return completed buffers to the set.
// All these variables are are protected by the TLOQ_CBL_mon. XXX ??? // All these variables are are protected by the TLOQ_CBL_mon. XXX ???
class PtrQueueSet: public CHeapObj { class PtrQueueSet VALUE_OBJ_CLASS_SPEC {
protected: protected:

View file

@ -33,7 +33,7 @@
// old versions synchronously. // old versions synchronously.
class SparsePRTEntry { class SparsePRTEntry: public CHeapObj {
public: public:
enum SomePublicConstants { enum SomePublicConstants {
CardsPerEntry = (short)4, CardsPerEntry = (short)4,
@ -167,7 +167,7 @@ public:
}; };
// ValueObj because will be embedded in HRRS iterator. // ValueObj because will be embedded in HRRS iterator.
class RSHashTableIter: public CHeapObj { class RSHashTableIter VALUE_OBJ_CLASS_SPEC {
short _tbl_ind; short _tbl_ind;
short _bl_ind; short _bl_ind;
short _card_ind; short _card_ind;
@ -213,7 +213,7 @@ class RSHashTableIter: public CHeapObj {
class SparsePRTIter; class SparsePRTIter;
class SparsePRT : public CHeapObj { class SparsePRT VALUE_OBJ_CLASS_SPEC {
// Iterations are done on the _cur hash table, since they only need to // Iterations are done on the _cur hash table, since they only need to
// see entries visible at the start of a collection pause. // see entries visible at the start of a collection pause.
// All other operations are done using the _next hash table. // All other operations are done using the _next hash table.

View file

@ -48,6 +48,7 @@ concurrentG1Refine.cpp g1RemSet.hpp
concurrentG1Refine.cpp space.inline.hpp concurrentG1Refine.cpp space.inline.hpp
concurrentG1Refine.hpp globalDefinitions.hpp concurrentG1Refine.hpp globalDefinitions.hpp
concurrentG1Refine.hpp allocation.hpp
concurrentG1RefineThread.cpp concurrentG1Refine.hpp concurrentG1RefineThread.cpp concurrentG1Refine.hpp
concurrentG1RefineThread.cpp concurrentG1RefineThread.hpp concurrentG1RefineThread.cpp concurrentG1RefineThread.hpp
@ -229,7 +230,7 @@ g1MMUTracker.cpp ostream.hpp
g1MMUTracker.cpp mutexLocker.hpp g1MMUTracker.cpp mutexLocker.hpp
g1MMUTracker.hpp debug.hpp g1MMUTracker.hpp debug.hpp
g1MMUTracker.hpp allocation.hpp
g1RemSet.cpp bufferingOopClosure.hpp g1RemSet.cpp bufferingOopClosure.hpp
g1RemSet.cpp concurrentG1Refine.hpp g1RemSet.cpp concurrentG1Refine.hpp
g1RemSet.cpp concurrentG1RefineThread.hpp g1RemSet.cpp concurrentG1RefineThread.hpp

View file

@ -32,7 +32,7 @@ class WorkData;
// An abstract task to be worked on by a gang. // An abstract task to be worked on by a gang.
// You subclass this to supply your own work() method // You subclass this to supply your own work() method
class AbstractGangTask: public CHeapObj { class AbstractGangTask VALUE_OBJ_CLASS_SPEC {
public: public:
// The abstract work method. // The abstract work method.
// The argument tells you which member of the gang you are. // The argument tells you which member of the gang you are.