comparison src/share/vm/gc_implementation/g1/g1CollectedHeap.cpp @ 11173:6b0fd0964b87

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/
author Doug Simon <doug.simon@oracle.com>
date Wed, 31 Jul 2013 11:00:54 +0200
parents 836a62f43af9 71180a6e5080
children d0aeaf72c7bd
comparison
equal deleted inserted replaced
10912:4ea54634f03e 11173:6b0fd0964b87
52 #include "memory/genOopClosures.inline.hpp" 52 #include "memory/genOopClosures.inline.hpp"
53 #include "memory/generationSpec.hpp" 53 #include "memory/generationSpec.hpp"
54 #include "memory/referenceProcessor.hpp" 54 #include "memory/referenceProcessor.hpp"
55 #include "oops/oop.inline.hpp" 55 #include "oops/oop.inline.hpp"
56 #include "oops/oop.pcgc.inline.hpp" 56 #include "oops/oop.pcgc.inline.hpp"
57 #include "runtime/aprofiler.hpp"
58 #include "runtime/vmThread.hpp" 57 #include "runtime/vmThread.hpp"
59 58
60 size_t G1CollectedHeap::_humongous_object_threshold_in_words = 0; 59 size_t G1CollectedHeap::_humongous_object_threshold_in_words = 0;
61 60
62 // turn it on so that the contents of the young list (scan-only / 61 // turn it on so that the contents of the young list (scan-only /
2673 void G1CollectedHeap::object_iterate(ObjectClosure* cl) { 2672 void G1CollectedHeap::object_iterate(ObjectClosure* cl) {
2674 IterateObjectClosureRegionClosure blk(cl); 2673 IterateObjectClosureRegionClosure blk(cl);
2675 heap_region_iterate(&blk); 2674 heap_region_iterate(&blk);
2676 } 2675 }
2677 2676
2678 void G1CollectedHeap::object_iterate_since_last_GC(ObjectClosure* cl) {
2679 // FIXME: is this right?
2680 guarantee(false, "object_iterate_since_last_GC not supported by G1 heap");
2681 }
2682
2683 // Calls a SpaceClosure on a HeapRegion. 2677 // Calls a SpaceClosure on a HeapRegion.
2684 2678
2685 class SpaceClosureRegionClosure: public HeapRegionClosure { 2679 class SpaceClosureRegionClosure: public HeapRegionClosure {
2686 SpaceClosure* _cl; 2680 SpaceClosure* _cl;
2687 public: 2681 public:
3606 } 3600 }
3607 3601
3608 void G1CollectedHeap::gc_prologue(bool full /* Ignored */) { 3602 void G1CollectedHeap::gc_prologue(bool full /* Ignored */) {
3609 // always_do_update_barrier = false; 3603 // always_do_update_barrier = false;
3610 assert(InlineCacheBuffer::is_empty(), "should have cleaned up ICBuffer"); 3604 assert(InlineCacheBuffer::is_empty(), "should have cleaned up ICBuffer");
3611 // Call allocation profiler
3612 AllocationProfiler::iterate_since_last_gc();
3613 // Fill TLAB's and such 3605 // Fill TLAB's and such
3614 ensure_parsability(true); 3606 ensure_parsability(true);
3615 } 3607 }
3616 3608
3617 void G1CollectedHeap::gc_epilogue(bool full /* Ignored */) { 3609 void G1CollectedHeap::gc_epilogue(bool full /* Ignored */) {