equal
deleted
inserted
replaced
112 void prepare_for_oops_into_collection_set_do(); |
112 void prepare_for_oops_into_collection_set_do(); |
113 void cleanup_after_oops_into_collection_set_do(); |
113 void cleanup_after_oops_into_collection_set_do(); |
114 |
114 |
115 G1RemSetScanState* scan_state() const { return _scan_state; } |
115 G1RemSetScanState* scan_state() const { return _scan_state; } |
116 |
116 |
117 // Record, if necessary, the fact that *p (where "p" is in region "from", |
|
118 // which is required to be non-NULL) has changed to a new non-NULL value. |
|
119 template <class T> void par_write_ref(HeapRegion* from, T* p, uint tid); |
|
120 |
|
121 // Eliminates any remembered set entries that correspond to dead heap ranges. |
117 // Eliminates any remembered set entries that correspond to dead heap ranges. |
122 void scrub(uint worker_num, HeapRegionClaimer* hrclaimer); |
118 void scrub(uint worker_num, HeapRegionClaimer* hrclaimer); |
123 |
119 |
124 // Refine the card corresponding to "card_ptr". Safe to be called concurrently |
120 // Refine the card corresponding to "card_ptr". Safe to be called concurrently |
125 // to the mutator. |
121 // to the mutator. |
189 size_t cards_scanned() const { return _cards_scanned; } |
185 size_t cards_scanned() const { return _cards_scanned; } |
190 size_t cards_claimed() const { return _cards_claimed; } |
186 size_t cards_claimed() const { return _cards_claimed; } |
191 size_t cards_skipped() const { return _cards_skipped; } |
187 size_t cards_skipped() const { return _cards_skipped; } |
192 }; |
188 }; |
193 |
189 |
194 class RebuildRSOopClosure: public ExtendedOopClosure { |
|
195 HeapRegion* _from; |
|
196 G1RemSet* _rs; |
|
197 uint _worker_i; |
|
198 |
|
199 template <class T> void do_oop_work(T* p); |
|
200 |
|
201 public: |
|
202 RebuildRSOopClosure(G1RemSet* rs, uint worker_i = 0) : |
|
203 _from(NULL), _rs(rs), _worker_i(worker_i) |
|
204 {} |
|
205 |
|
206 void set_from(HeapRegion* from) { |
|
207 assert(from != NULL, "from region must be non-NULL"); |
|
208 _from = from; |
|
209 } |
|
210 |
|
211 virtual void do_oop(narrowOop* p) { do_oop_work(p); } |
|
212 virtual void do_oop(oop* p) { do_oop_work(p); } |
|
213 }; |
|
214 |
|
215 #endif // SHARE_VM_GC_G1_G1REMSET_HPP |
190 #endif // SHARE_VM_GC_G1_G1REMSET_HPP |