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

Print this page
rev 6540 : 8054819: Rename HeapRegionSeq to HeapRegionManager
Reviewed-by: jwilhelm, jmasa

*** 31,41 **** #include "gc_implementation/g1/g1BiasedArray.hpp" #include "gc_implementation/g1/g1HRPrinter.hpp" #include "gc_implementation/g1/g1MonitoringSupport.hpp" #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp" #include "gc_implementation/g1/g1YCTypes.hpp" ! #include "gc_implementation/g1/heapRegionSeq.hpp" #include "gc_implementation/g1/heapRegionSet.hpp" #include "gc_implementation/shared/hSpaceCounters.hpp" #include "gc_implementation/shared/parGCAllocBuffer.hpp" #include "memory/barrierSet.hpp" #include "memory/memRegion.hpp" --- 31,41 ---- #include "gc_implementation/g1/g1BiasedArray.hpp" #include "gc_implementation/g1/g1HRPrinter.hpp" #include "gc_implementation/g1/g1MonitoringSupport.hpp" #include "gc_implementation/g1/g1SATBCardTableModRefBS.hpp" #include "gc_implementation/g1/g1YCTypes.hpp" ! #include "gc_implementation/g1/heapRegionManager.hpp" #include "gc_implementation/g1/heapRegionSet.hpp" #include "gc_implementation/shared/hSpaceCounters.hpp" #include "gc_implementation/shared/parGCAllocBuffer.hpp" #include "memory/barrierSet.hpp" #include "memory/memRegion.hpp"
*** 289,299 **** // Callback for region mapping changed events. G1RegionMappingChangedListener _listener; // The sequence of all heap regions in the heap. ! HeapRegionSeq _hrs; // Alloc region used to satisfy mutator allocation requests. MutatorAllocRegion _mutator_alloc_region; // Alloc region used to satisfy allocation requests by the GC for --- 289,299 ---- // Callback for region mapping changed events. G1RegionMappingChangedListener _listener; // The sequence of all heap regions in the heap. ! HeapRegionManager _hrm; // Alloc region used to satisfy mutator allocation requests. MutatorAllocRegion _mutator_alloc_region; // Alloc region used to satisfy allocation requests by the GC for
*** 427,437 **** // Clear RSets after a compaction. It also resets the GC time stamps. void clear_rsets_post_compaction(); // If the HR printer is active, dump the state of the regions in the // heap after a compaction. ! void print_hrs_post_compaction(); double verify(bool guard, const char* msg); void verify_before_gc(); void verify_after_gc(); --- 427,437 ---- // Clear RSets after a compaction. It also resets the GC time stamps. void clear_rsets_post_compaction(); // If the HR printer is active, dump the state of the regions in the // heap after a compaction. ! void print_hrm_post_compaction(); double verify(bool guard, const char* msg); void verify_before_gc(); void verify_after_gc();
*** 713,723 **** // the in_cset_fast_test table. void register_humongous_regions_with_in_cset_fast_test(); // We register a region with the fast "in collection set" test. We // simply set to true the array slot corresponding to this region. void register_region_with_in_cset_fast_test(HeapRegion* r) { ! _in_cset_fast_test.set_in_cset(r->hrs_index()); } // This is a fast test on whether a reference points into the // collection set or not. Assume that the reference // points into the heap. --- 713,723 ---- // the in_cset_fast_test table. void register_humongous_regions_with_in_cset_fast_test(); // We register a region with the fast "in collection set" test. We // simply set to true the array slot corresponding to this region. void register_region_with_in_cset_fast_test(HeapRegion* r) { ! _in_cset_fast_test.set_in_cset(r->hrm_index()); } // This is a fast test on whether a reference points into the // collection set or not. Assume that the reference // points into the heap.
*** 1169,1189 **** // allocation, via inlined code (by exporting the address of the top and // end fields defining the extent of the contiguous allocation region.) // But G1CollectedHeap doesn't yet support this. virtual bool is_maximal_no_gc() const { ! return _hrs.available() == 0; } // The current number of regions in the heap. ! uint num_regions() const { return _hrs.length(); } // The max number of regions in the heap. ! uint max_regions() const { return _hrs.max_length(); } // The number of regions that are completely free. ! uint num_free_regions() const { return _hrs.num_free_regions(); } // The number of regions that are not completely free. uint num_used_regions() const { return num_regions() - num_free_regions(); } void verify_not_dirty_region(HeapRegion* hr) PRODUCT_RETURN; --- 1169,1189 ---- // allocation, via inlined code (by exporting the address of the top and // end fields defining the extent of the contiguous allocation region.) // But G1CollectedHeap doesn't yet support this. virtual bool is_maximal_no_gc() const { ! return _hrm.available() == 0; } // The current number of regions in the heap. ! uint num_regions() const { return _hrm.length(); } // The max number of regions in the heap. ! uint max_regions() const { return _hrm.max_length(); } // The number of regions that are completely free. ! uint num_free_regions() const { return _hrm.num_free_regions(); } // The number of regions that are not completely free. uint num_used_regions() const { return num_regions() - num_free_regions(); } void verify_not_dirty_region(HeapRegion* hr) PRODUCT_RETURN;
*** 1231,1241 **** void verify_region_sets_optional() { } #endif // HEAP_REGION_SET_FORCE_VERIFY #ifdef ASSERT bool is_on_master_free_list(HeapRegion* hr) { ! return _hrs.is_free(hr); } #endif // ASSERT // Wrapper for the region list operations that can be called from // methods outside this class. --- 1231,1241 ---- void verify_region_sets_optional() { } #endif // HEAP_REGION_SET_FORCE_VERIFY #ifdef ASSERT bool is_on_master_free_list(HeapRegion* hr) { ! return _hrm.is_free(hr); } #endif // ASSERT // Wrapper for the region list operations that can be called from // methods outside this class.
*** 1243,1253 **** void secondary_free_list_add(FreeRegionList* list) { _secondary_free_list.add_ordered(list); } void append_secondary_free_list() { ! _hrs.insert_list_into_free_list(&_secondary_free_list); } void append_secondary_free_list_if_not_empty_with_lock() { // If the secondary free list looks empty there's no reason to // take the lock and then try to append it. --- 1243,1253 ---- void secondary_free_list_add(FreeRegionList* list) { _secondary_free_list.add_ordered(list); } void append_secondary_free_list() { ! _hrm.insert_list_into_free_list(&_secondary_free_list); } void append_secondary_free_list_if_not_empty_with_lock() { // If the secondary free list looks empty there's no reason to // take the lock and then try to append it.
*** 1354,1370 **** inline in_cset_state_t in_cset_state(const oop obj); // Return "TRUE" iff the given object address is in the reserved // region of g1. bool is_in_g1_reserved(const void* p) const { ! return _hrs.reserved().contains(p); } // Returns a MemRegion that corresponds to the space that has been // reserved for the heap MemRegion g1_reserved() const { ! return _hrs.reserved(); } virtual bool is_in_closed_subset(const void* p) const; G1SATBCardTableLoggingModRefBS* g1_barrier_set() { --- 1354,1370 ---- inline in_cset_state_t in_cset_state(const oop obj); // Return "TRUE" iff the given object address is in the reserved // region of g1. bool is_in_g1_reserved(const void* p) const { ! return _hrm.reserved().contains(p); } // Returns a MemRegion that corresponds to the space that has been // reserved for the heap MemRegion g1_reserved() const { ! return _hrm.reserved(); } virtual bool is_in_closed_subset(const void* p) const; G1SATBCardTableLoggingModRefBS* g1_barrier_set() {