31 #include "gc/shenandoah/shenandoahCollectionSet.hpp"
32 #include "gc/shenandoah/shenandoahFreeSet.hpp"
33 #include "gc/shenandoah/shenandoahPhaseTimings.hpp"
34 #include "gc/shenandoah/shenandoahMarkCompact.hpp"
35 #include "gc/shenandoah/shenandoahHeapRegionSet.hpp"
36 #include "gc/shenandoah/shenandoahHeap.inline.hpp"
37 #include "gc/shenandoah/shenandoahHeuristics.hpp"
38 #include "gc/shenandoah/shenandoahMarkingContext.inline.hpp"
39 #include "gc/shenandoah/shenandoahRootProcessor.inline.hpp"
40 #include "gc/shenandoah/shenandoahTraversalGC.hpp"
41 #include "gc/shenandoah/shenandoahTaskqueue.inline.hpp"
42 #include "gc/shenandoah/shenandoahUtils.hpp"
43 #include "gc/shenandoah/shenandoahVerifier.hpp"
44 #include "gc/shenandoah/shenandoahVMOperations.hpp"
45 #include "gc/shenandoah/shenandoahWorkerPolicy.hpp"
46 #include "memory/metaspace.hpp"
47 #include "memory/universe.hpp"
48 #include "oops/compressedOops.inline.hpp"
49 #include "oops/oop.inline.hpp"
50 #include "runtime/biasedLocking.hpp"
51 #include "runtime/thread.hpp"
52 #include "utilities/copy.hpp"
53 #include "utilities/growableArray.hpp"
54 #include "gc/shared/workgroup.hpp"
55
56 ShenandoahMarkCompact::ShenandoahMarkCompact() :
57 _gc_timer(NULL),
58 _preserved_marks(new PreservedMarksSet(true)) {}
59
60 void ShenandoahMarkCompact::initialize(GCTimer* gc_timer) {
61 _gc_timer = gc_timer;
62 }
63
64 void ShenandoahMarkCompact::do_it(GCCause::Cause gc_cause) {
65 ShenandoahHeap* heap = ShenandoahHeap::heap();
66
67 if (ShenandoahVerify) {
68 heap->verifier()->verify_before_fullgc();
69 }
70
|
31 #include "gc/shenandoah/shenandoahCollectionSet.hpp"
32 #include "gc/shenandoah/shenandoahFreeSet.hpp"
33 #include "gc/shenandoah/shenandoahPhaseTimings.hpp"
34 #include "gc/shenandoah/shenandoahMarkCompact.hpp"
35 #include "gc/shenandoah/shenandoahHeapRegionSet.hpp"
36 #include "gc/shenandoah/shenandoahHeap.inline.hpp"
37 #include "gc/shenandoah/shenandoahHeuristics.hpp"
38 #include "gc/shenandoah/shenandoahMarkingContext.inline.hpp"
39 #include "gc/shenandoah/shenandoahRootProcessor.inline.hpp"
40 #include "gc/shenandoah/shenandoahTraversalGC.hpp"
41 #include "gc/shenandoah/shenandoahTaskqueue.inline.hpp"
42 #include "gc/shenandoah/shenandoahUtils.hpp"
43 #include "gc/shenandoah/shenandoahVerifier.hpp"
44 #include "gc/shenandoah/shenandoahVMOperations.hpp"
45 #include "gc/shenandoah/shenandoahWorkerPolicy.hpp"
46 #include "memory/metaspace.hpp"
47 #include "memory/universe.hpp"
48 #include "oops/compressedOops.inline.hpp"
49 #include "oops/oop.inline.hpp"
50 #include "runtime/biasedLocking.hpp"
51 #include "runtime/orderAccess.hpp"
52 #include "runtime/thread.hpp"
53 #include "utilities/copy.hpp"
54 #include "utilities/growableArray.hpp"
55 #include "gc/shared/workgroup.hpp"
56
57 ShenandoahMarkCompact::ShenandoahMarkCompact() :
58 _gc_timer(NULL),
59 _preserved_marks(new PreservedMarksSet(true)) {}
60
61 void ShenandoahMarkCompact::initialize(GCTimer* gc_timer) {
62 _gc_timer = gc_timer;
63 }
64
65 void ShenandoahMarkCompact::do_it(GCCause::Cause gc_cause) {
66 ShenandoahHeap* heap = ShenandoahHeap::heap();
67
68 if (ShenandoahVerify) {
69 heap->verifier()->verify_before_fullgc();
70 }
71
|