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

changeset 7208
7baf47cb97cb
parent 7091
a8ea2f110d87
child 7218
6948da6d7c13
equal deleted inserted replaced
7207:152cf4afc11f 7208:7baf47cb97cb
107 class ScanRSClosure : public HeapRegionClosure { 107 class ScanRSClosure : public HeapRegionClosure {
108 size_t _cards_done, _cards; 108 size_t _cards_done, _cards;
109 G1CollectedHeap* _g1h; 109 G1CollectedHeap* _g1h;
110 110
111 OopsInHeapRegionClosure* _oc; 111 OopsInHeapRegionClosure* _oc;
112 CodeBlobToOopClosure* _code_root_cl; 112 CodeBlobClosure* _code_root_cl;
113 113
114 G1BlockOffsetSharedArray* _bot_shared; 114 G1BlockOffsetSharedArray* _bot_shared;
115 G1SATBCardTableModRefBS *_ct_bs; 115 G1SATBCardTableModRefBS *_ct_bs;
116 116
117 double _strong_code_root_scan_time_sec; 117 double _strong_code_root_scan_time_sec;
119 int _block_size; 119 int _block_size;
120 bool _try_claimed; 120 bool _try_claimed;
121 121
122 public: 122 public:
123 ScanRSClosure(OopsInHeapRegionClosure* oc, 123 ScanRSClosure(OopsInHeapRegionClosure* oc,
124 CodeBlobToOopClosure* code_root_cl, 124 CodeBlobClosure* code_root_cl,
125 uint worker_i) : 125 uint worker_i) :
126 _oc(oc), 126 _oc(oc),
127 _code_root_cl(code_root_cl), 127 _code_root_cl(code_root_cl),
128 _strong_code_root_scan_time_sec(0.0), 128 _strong_code_root_scan_time_sec(0.0),
129 _cards(0), 129 _cards(0),
239 size_t cards_done() { return _cards_done;} 239 size_t cards_done() { return _cards_done;}
240 size_t cards_looked_up() { return _cards;} 240 size_t cards_looked_up() { return _cards;}
241 }; 241 };
242 242
243 void G1RemSet::scanRS(OopsInHeapRegionClosure* oc, 243 void G1RemSet::scanRS(OopsInHeapRegionClosure* oc,
244 CodeBlobToOopClosure* code_root_cl, 244 CodeBlobClosure* code_root_cl,
245 uint worker_i) { 245 uint worker_i) {
246 double rs_time_start = os::elapsedTime(); 246 double rs_time_start = os::elapsedTime();
247 HeapRegion *startRegion = _g1->start_cset_region_for_worker(worker_i); 247 HeapRegion *startRegion = _g1->start_cset_region_for_worker(worker_i);
248 248
249 ScanRSClosure scanRScl(oc, code_root_cl, worker_i); 249 ScanRSClosure scanRScl(oc, code_root_cl, worker_i);
318 void G1RemSet::cleanupHRRS() { 318 void G1RemSet::cleanupHRRS() {
319 HeapRegionRemSet::cleanup(); 319 HeapRegionRemSet::cleanup();
320 } 320 }
321 321
322 void G1RemSet::oops_into_collection_set_do(OopsInHeapRegionClosure* oc, 322 void G1RemSet::oops_into_collection_set_do(OopsInHeapRegionClosure* oc,
323 CodeBlobToOopClosure* code_root_cl, 323 CodeBlobClosure* code_root_cl,
324 uint worker_i) { 324 uint worker_i) {
325 #if CARD_REPEAT_HISTO 325 #if CARD_REPEAT_HISTO
326 ct_freq_update_histo_and_reset(); 326 ct_freq_update_histo_and_reset();
327 #endif 327 #endif
328 328

mercurial