hotspot/src/share/vm/gc_implementation/g1/g1CollectedHeap.hpp
changeset 29470 e34bbcd36e53
parent 29465 7c6ad4acdb78
child 29685 c19484601161
equal deleted inserted replaced
29468:fb61ea6af339 29470:e34bbcd36e53
   643   bool humongous_region_is_always_live(uint index);
   643   bool humongous_region_is_always_live(uint index);
   644   // Returns whether the given region (which must be a humongous (start) region)
   644   // Returns whether the given region (which must be a humongous (start) region)
   645   // is considered a candidate for eager reclamation.
   645   // is considered a candidate for eager reclamation.
   646   bool humongous_region_is_candidate(uint index);
   646   bool humongous_region_is_candidate(uint index);
   647   // Register the given region to be part of the collection set.
   647   // Register the given region to be part of the collection set.
   648   inline void register_humongous_region_with_in_cset_fast_test(uint index);
   648   inline void register_humongous_region_with_cset(uint index);
   649   // Register regions with humongous objects (actually on the start region) in
   649   // Register regions with humongous objects (actually on the start region) in
   650   // the in_cset_fast_test table.
   650   // the in_cset_fast_test table.
   651   void register_humongous_regions_with_in_cset_fast_test();
   651   void register_humongous_regions_with_cset();
   652   // We register a region with the fast "in collection set" test. We
   652   // We register a region with the fast "in collection set" test. We
   653   // simply set to true the array slot corresponding to this region.
   653   // simply set to true the array slot corresponding to this region.
   654   void register_young_region_with_in_cset_fast_test(HeapRegion* r) {
   654   void register_young_region_with_cset(HeapRegion* r) {
   655     _in_cset_fast_test.set_in_young(r->hrm_index());
   655     _in_cset_fast_test.set_in_young(r->hrm_index());
   656   }
   656   }
   657   void register_old_region_with_in_cset_fast_test(HeapRegion* r) {
   657   void register_old_region_with_cset(HeapRegion* r) {
   658     _in_cset_fast_test.set_in_old(r->hrm_index());
   658     _in_cset_fast_test.set_in_old(r->hrm_index());
   659   }
   659   }
   660 
   660   void clear_in_cset(const HeapRegion* hr) {
   661   // This is a fast test on whether a reference points into the
   661     _in_cset_fast_test.clear(hr);
   662   // collection set or not. Assume that the reference
   662   }
   663   // points into the heap.
       
   664   inline bool in_cset_fast_test(oop obj);
       
   665 
   663 
   666   void clear_cset_fast_test() {
   664   void clear_cset_fast_test() {
   667     _in_cset_fast_test.clear();
   665     _in_cset_fast_test.clear();
   668   }
   666   }
   669 
   667 
  1244 
  1242 
  1245   // Return "TRUE" iff the given object address is within the collection
  1243   // Return "TRUE" iff the given object address is within the collection
  1246   // set. Slow implementation.
  1244   // set. Slow implementation.
  1247   inline bool obj_in_cs(oop obj);
  1245   inline bool obj_in_cs(oop obj);
  1248 
  1246 
       
  1247   inline bool is_in_cset(const HeapRegion *hr);
  1249   inline bool is_in_cset(oop obj);
  1248   inline bool is_in_cset(oop obj);
  1250 
  1249 
  1251   inline bool is_in_cset_or_humongous(const oop obj);
  1250   inline bool is_in_cset_or_humongous(const oop obj);
  1252 
  1251 
  1253  private:
  1252  private: