< prev index next >

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

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

*** 32,41 **** --- 32,42 ---- #include "gc/g1/g1CollectorState.hpp" #include "gc/g1/g1ConcurrentMark.hpp" #include "gc/g1/g1EdenRegions.hpp" #include "gc/g1/g1EvacFailure.hpp" #include "gc/g1/g1EvacStats.hpp" + #include "gc/g1/g1HeapTransition.hpp" #include "gc/g1/g1HeapVerifier.hpp" #include "gc/g1/g1HRPrinter.hpp" #include "gc/g1/g1InCSetState.hpp" #include "gc/g1/g1MonitoringSupport.hpp" #include "gc/g1/g1SATBCardTableModRefBS.hpp"
*** 85,94 **** --- 86,96 ---- class nmethod; class Ticks; class WorkGang; class G1Allocator; class G1ArchiveAllocator; + class G1FullGCScope; class G1HeapVerifier; class G1HeapSizingPolicy; typedef OverflowTaskQueue<StarTask, mtGC> RefToScanQueue; typedef GenericTaskQueueSet<RefToScanQueue, mtGC> RefToScanQueueSet;
*** 508,517 **** --- 510,530 ---- // failed allocation request (including collection, expansion, etc.) HeapWord* satisfy_failed_allocation(size_t word_size, AllocationContext_t context, bool* succeeded); private: + // Internal helpers used during full GC to split it up to + // increase readability. + void do_full_collection_inner(G1FullGCScope* scope); + void abort_concurrent_cycle(); + void verify_before_full_collection(bool explicit_gc); + void prepare_heap_for_full_collection(); + void prepare_heap_for_mutators(); + void abort_refinement(); + void verify_after_full_collection(); + void print_heap_after_full_collection(G1HeapTransition* heap_transition); + // Helper method for satisfy_failed_allocation() HeapWord* satisfy_failed_allocation_helper(size_t word_size, AllocationContext_t context, bool do_gc, bool clear_all_soft_refs,
< prev index next >