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

Print this page




 116   void scrub(BitMap* region_bm, BitMap* card_bm);
 117 
 118   // Like the above, but assumes is called in parallel: "worker_num" is the
 119   // parallel thread id of the current thread, and "claim_val" is the
 120   // value that should be used to claim heap regions.
 121   void scrub_par(BitMap* region_bm, BitMap* card_bm,
 122                  uint worker_num, int claim_val);
 123 
 124   // Refine the card corresponding to "card_ptr".
 125   // If check_for_refs_into_cset is true, a true result is returned
 126   // if the given card contains oops that have references into the
 127   // current collection set.
 128   virtual bool refine_card(jbyte* card_ptr,
 129                            int worker_i,
 130                            bool check_for_refs_into_cset);
 131 
 132   // Print accumulated summary info from the start of the VM.
 133   virtual void print_summary_info();
 134 
 135   // Print accumulated summary info from the last time called.
 136   virtual void print_periodic_summary_info();
 137 
 138   // Prepare remembered set for verification.
 139   virtual void prepare_for_verify();
 140 
 141   size_t conc_refine_cards() const {
 142     return _conc_refine_cards;
 143   }
 144 };
 145 
 146 class CountNonCleanMemRegionClosure: public MemRegionClosure {
 147   G1CollectedHeap* _g1;
 148   int _n;
 149   HeapWord* _start_first;
 150 public:
 151   CountNonCleanMemRegionClosure(G1CollectedHeap* g1) :
 152     _g1(g1), _n(0), _start_first(NULL)
 153   {}
 154   void do_MemRegion(MemRegion mr);
 155   int n() { return _n; };
 156   HeapWord* start_first() { return _start_first; }




 116   void scrub(BitMap* region_bm, BitMap* card_bm);
 117 
 118   // Like the above, but assumes is called in parallel: "worker_num" is the
 119   // parallel thread id of the current thread, and "claim_val" is the
 120   // value that should be used to claim heap regions.
 121   void scrub_par(BitMap* region_bm, BitMap* card_bm,
 122                  uint worker_num, int claim_val);
 123 
 124   // Refine the card corresponding to "card_ptr".
 125   // If check_for_refs_into_cset is true, a true result is returned
 126   // if the given card contains oops that have references into the
 127   // current collection set.
 128   virtual bool refine_card(jbyte* card_ptr,
 129                            int worker_i,
 130                            bool check_for_refs_into_cset);
 131 
 132   // Print accumulated summary info from the start of the VM.
 133   virtual void print_summary_info();
 134 
 135   // Print accumulated summary info from the last time called.
 136   virtual void print_periodic_summary_info(const char* header);
 137 
 138   // Prepare remembered set for verification.
 139   virtual void prepare_for_verify();
 140 
 141   size_t conc_refine_cards() const {
 142     return _conc_refine_cards;
 143   }
 144 };
 145 
 146 class CountNonCleanMemRegionClosure: public MemRegionClosure {
 147   G1CollectedHeap* _g1;
 148   int _n;
 149   HeapWord* _start_first;
 150 public:
 151   CountNonCleanMemRegionClosure(G1CollectedHeap* g1) :
 152     _g1(g1), _n(0), _start_first(NULL)
 153   {}
 154   void do_MemRegion(MemRegion mr);
 155   int n() { return _n; };
 156   HeapWord* start_first() { return _start_first; }