< prev index next >
src/hotspot/share/gc/g1/heapRegionRemSet.hpp
Print this page
rev 52572 : imported patch 8213996-remove-sparseprt-table
rev 52573 : [mq]: 8213996-remove-sparseprt-table-more-cleanup
@@ -40,15 +40,10 @@
class HeapRegionRemSetIterator;
class PerRegionTable;
class SparsePRT;
class nmethod;
-// Essentially a wrapper around SparsePRTCleanupTask. See
-// sparsePRT.hpp for more details.
-class HRRSCleanupTask : public SparsePRTCleanupTask {
-};
-
// The "_coarse_map" is a bitmap with one bit for each region, where set
// bits indicate that the corresponding region may contain some pointer
// into the owning region.
// The "_fine_grain_entries" array is an open hash table of PerRegionTables
@@ -120,10 +115,14 @@
// unlink/remove the given fine grain remembered set into the "all" list
void unlink_from_all(PerRegionTable * prt);
bool contains_reference_locked(OopOrNarrowOopStar from) const;
+ size_t occ_fine() const;
+ size_t occ_coarse() const;
+ size_t occ_sparse() const;
+
public:
// Create a new remembered set. The given mutex is used to ensure consistency.
OtherRegionsTable(Mutex* m);
// Returns the card index of the given within_region pointer relative to the bottom
@@ -142,13 +141,10 @@
// Returns whether this remembered set (and all sub-sets) does not contain any entry.
bool is_empty() const;
// Returns the number of cards contained in this remembered set.
size_t occupied() const;
- size_t occ_fine() const;
- size_t occ_coarse() const;
- size_t occ_sparse() const;
static jint n_coarsenings() { return _n_coarsenings; }
// Returns size of the actual remembered set containers in bytes.
size_t mem_size() const;
@@ -157,12 +153,10 @@
// Returns the size of the free list content in bytes.
static size_t fl_mem_size();
// Clear the entire contents of this remembered set.
void clear();
-
- void do_cleanup_work(HRRSCleanupTask* hrrs_cleanup_task);
};
class HeapRegionRemSet : public CHeapObj<mtGC> {
friend class VMStructs;
friend class HeapRegionRemSetIterator;
@@ -204,19 +198,10 @@
return occupied_locked();
}
size_t occupied_locked() {
return _other_regions.occupied();
}
- size_t occ_fine() const {
- return _other_regions.occ_fine();
- }
- size_t occ_coarse() const {
- return _other_regions.occ_coarse();
- }
- size_t occ_sparse() const {
- return _other_regions.occ_sparse();
- }
static jint n_coarsenings() { return OtherRegionsTable::n_coarsenings(); }
private:
enum RemSetState {
@@ -338,31 +323,19 @@
// Returns the amount of memory, in bytes, currently
// consumed by the strong code roots.
size_t strong_code_roots_mem_size();
- // Called during a stop-world phase to perform any deferred cleanups.
- static void cleanup();
-
static void invalidate_from_card_cache(uint start_idx, size_t num_regions) {
G1FromCardCache::invalidate(start_idx, num_regions);
}
#ifndef PRODUCT
static void print_from_card_cache() {
G1FromCardCache::print();
}
-#endif
- // These are wrappers for the similarly-named methods on
- // SparsePRT. Look at sparsePRT.hpp for more details.
- static void reset_for_cleanup_tasks();
- void do_cleanup_work(HRRSCleanupTask* hrrs_cleanup_task);
- static void finish_cleanup_task(HRRSCleanupTask* hrrs_cleanup_task);
-
- // Run unit tests.
-#ifndef PRODUCT
static void test();
#endif
};
class HeapRegionRemSetIterator : public StackObj {
< prev index next >