< prev index next >

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

Print this page
rev 7518 : 8048179: Early reclaim of large objects that are referenced by a few objects
Summary:
Reviewed-by:

*** 181,190 **** --- 181,194 ---- void add_reference(OopOrNarrowOopStar from, uint tid); // Returns whether the remembered set contains the given reference. bool contains_reference(OopOrNarrowOopStar from) const; + // Returns whether this remembered set (and all sub-sets) are "small" so that + // the (humongous) region will be candidate for eager reclaim. + bool is_small_for_eager_reclaim() const; + // Removes any entries shown by the given bitmaps to contain only dead // objects. Not thread safe. // Set bits in the bitmaps indicate that the given region or card is live. void scrub(CardTableModRefBS* ctbs, BitMap* region_bm, BitMap* card_bm);
*** 259,268 **** --- 263,276 ---- bool is_empty() const { return (strong_code_roots_list_length() == 0) && _other_regions.is_empty(); } + bool is_small_for_eager_reclaim() const { + return (strong_code_roots_list_length() == 0) && _other_regions.is_small_for_eager_reclaim(); + } + size_t occupied() { MutexLockerEx x(&_m, Mutex::_no_safepoint_check_flag); return occupied_locked(); } size_t occupied_locked() {
< prev index next >