--- a/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Fri Jun 07 09:33:01 2013 -0700
+++ b/hotspot/src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.hpp Mon Jun 10 11:30:51 2013 +0200
@@ -46,6 +46,8 @@
class PreGCValues;
class MoveAndUpdateClosure;
class RefProcTaskExecutor;
+class ParallelOldTracer;
+class STWGCTimer;
// The SplitInfo class holds the information needed to 'split' a source region
// so that the live data can be copied to two destination *spaces*. Normally,
@@ -972,6 +974,8 @@
friend class RefProcTaskProxy;
private:
+ static STWGCTimer _gc_timer;
+ static ParallelOldTracer _gc_tracer;
static elapsedTimer _accumulated_time;
static unsigned int _total_invocations;
static unsigned int _maximum_compaction_gc_num;
@@ -1015,7 +1019,8 @@
// Mark live objects
static void marking_phase(ParCompactionManager* cm,
- bool maximum_heap_compaction);
+ bool maximum_heap_compaction,
+ ParallelOldTracer *gc_tracer);
template <class T>
static inline void follow_root(ParCompactionManager* cm, T* p);
@@ -1284,6 +1289,8 @@
// Reference Processing
static ReferenceProcessor* const ref_processor() { return _ref_processor; }
+ static STWGCTimer* gc_timer() { return &_gc_timer; }
+
// Return the SpaceId for the given address.
static SpaceId space_id(HeapWord* addr);