< prev index next >

src/share/vm/gc/g1/g1FullGCScope.hpp

Print this page
rev 13070 : imported patch 8177544-full-gc-scope
rev 13071 : [mq]: 8177544-full-gc-scope-tschatzl-rev1

@@ -24,20 +24,22 @@
 
 #ifndef SHARE_VM_GC_G1_G1FULLGCSCOPE_HPP
 #define SHARE_VM_GC_G1_G1FULLGCSCOPE_HPP
 
 #include "gc/g1/g1CollectedHeap.hpp"
+#include "gc/g1/g1HeapTransition.hpp"
 #include "gc/shared/collectorCounters.hpp"
 #include "gc/shared/gcId.hpp"
 #include "gc/shared/gcTrace.hpp"
 #include "gc/shared/gcTraceTime.hpp"
 #include "gc/shared/gcTimer.hpp"
 #include "gc/shared/isGCActiveMark.hpp"
 #include "gc/shared/vmGCOperations.hpp"
 #include "memory/allocation.hpp"
 #include "services/memoryService.hpp"
 
+// Class used to group scoped objects used in the Full GC together.
 class G1FullGCScope : public StackObj {
   ResourceMark            _rm;
   bool                    _explicit_gc;
   G1CollectedHeap*        _g1h;
   GCIdMark                _gc_id;

@@ -47,10 +49,11 @@
   IsGCActiveMark          _active;
   GCTraceCPUTime          _cpu_time;
   ClearedAllSoftRefs      _soft_refs;
   TraceCollectorStats     _collector_stats;
   TraceMemoryManagerStats _memory_stats;
+  G1HeapTransition        _heap_transition;
 
   // Singleton instance.
   static G1FullGCScope* _instance;
 public:
   static G1FullGCScope* instance();

@@ -61,8 +64,9 @@
   bool is_explicit_gc();
   bool should_clear_soft_refs();
 
   STWGCTimer* timer();
   SerialOldTracer* tracer();
+  G1HeapTransition* heap_transition();
 };
 
 #endif //SHARE_VM_GC_G1_G1FULLGCSCOPE_HPP
< prev index next >