< prev index next >

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

Print this page
rev 7558 : 8048179: Early reclaim of large objects that are referenced by a few objects
Summary:
Reviewed-by:
rev 7559 : imported patch bengt-review
rev 7560 : [mq]: bengt-review2


 168   void unlink_from_all(PerRegionTable * prt);
 169 
 170   bool contains_reference_locked(OopOrNarrowOopStar from) const;
 171 
 172   // Clear the from_card_cache entries for this region.
 173   void clear_fcc();
 174 public:
 175   // Create a new remembered set for the given heap region. The given mutex should
 176   // be used to ensure consistency.
 177   OtherRegionsTable(HeapRegion* hr, Mutex* m);
 178 
 179   // For now.  Could "expand" some tables in the future, so that this made
 180   // sense.
 181   void add_reference(OopOrNarrowOopStar from, uint tid);
 182 
 183   // Returns whether the remembered set contains the given reference.
 184   bool contains_reference(OopOrNarrowOopStar from) const;
 185 
 186   // Returns whether this remembered set (and all sub-sets) have an occupancy
 187   // that is less or equal than the given occupancy.
 188   bool occupancy_less_or_equal_than(size_t occ) const;  
 189 
 190   // Removes any entries shown by the given bitmaps to contain only dead
 191   // objects. Not thread safe.
 192   // Set bits in the bitmaps indicate that the given region or card is live.
 193   void scrub(CardTableModRefBS* ctbs, BitMap* region_bm, BitMap* card_bm);
 194 
 195   // Returns whether this remembered set (and all sub-sets) does not contain any entry.
 196   bool is_empty() const;
 197 
 198   // Returns the number of cards contained in this remembered set.
 199   size_t occupied() const;
 200   size_t occ_fine() const;
 201   size_t occ_coarse() const;
 202   size_t occ_sparse() const;
 203 
 204   static jint n_coarsenings() { return _n_coarsenings; }
 205 
 206   // Returns size of the actual remembered set containers in bytes.
 207   size_t mem_size() const;
 208   // Returns the size of static data in bytes.




 168   void unlink_from_all(PerRegionTable * prt);
 169 
 170   bool contains_reference_locked(OopOrNarrowOopStar from) const;
 171 
 172   // Clear the from_card_cache entries for this region.
 173   void clear_fcc();
 174 public:
 175   // Create a new remembered set for the given heap region. The given mutex should
 176   // be used to ensure consistency.
 177   OtherRegionsTable(HeapRegion* hr, Mutex* m);
 178 
 179   // For now.  Could "expand" some tables in the future, so that this made
 180   // sense.
 181   void add_reference(OopOrNarrowOopStar from, uint tid);
 182 
 183   // Returns whether the remembered set contains the given reference.
 184   bool contains_reference(OopOrNarrowOopStar from) const;
 185 
 186   // Returns whether this remembered set (and all sub-sets) have an occupancy
 187   // that is less or equal than the given occupancy.
 188   bool occupancy_less_or_equal_than(size_t limit) const;  
 189 
 190   // Removes any entries shown by the given bitmaps to contain only dead
 191   // objects. Not thread safe.
 192   // Set bits in the bitmaps indicate that the given region or card is live.
 193   void scrub(CardTableModRefBS* ctbs, BitMap* region_bm, BitMap* card_bm);
 194 
 195   // Returns whether this remembered set (and all sub-sets) does not contain any entry.
 196   bool is_empty() const;
 197 
 198   // Returns the number of cards contained in this remembered set.
 199   size_t occupied() const;
 200   size_t occ_fine() const;
 201   size_t occ_coarse() const;
 202   size_t occ_sparse() const;
 203 
 204   static jint n_coarsenings() { return _n_coarsenings; }
 205 
 206   // Returns size of the actual remembered set containers in bytes.
 207   size_t mem_size() const;
 208   // Returns the size of static data in bytes.


< prev index next >