< prev index next >

src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp

Print this page

        

*** 79,89 **** for (CodeBlob *cb = CodeCache::first_blob(_heap); cb != NULL; cb = CodeCache::next_blob(_heap, cb)) { int current = count++; if ((current & stride_mask) == 0) { process_block = (current >= _claimed_idx) && ! (Atomic::cmpxchg(current + stride, &_claimed_idx, current) == current); } if (process_block) { if (cb->is_alive()) { f->do_code_blob(cb); #ifdef ASSERT --- 79,89 ---- for (CodeBlob *cb = CodeCache::first_blob(_heap); cb != NULL; cb = CodeCache::next_blob(_heap, cb)) { int current = count++; if ((current & stride_mask) == 0) { process_block = (current >= _claimed_idx) && ! (Atomic::cmpxchg(&_claimed_idx, current, current + stride) == current); } if (process_block) { if (cb->is_alive()) { f->do_code_blob(cb); #ifdef ASSERT
*** 262,272 **** GrowableArray<ShenandoahNMethod*>* list = ShenandoahCodeRoots::_recorded_nms; size_t max = (size_t)list->length(); while (_claimed < max) { ! size_t cur = Atomic::add(stride, &_claimed) - stride; size_t start = cur; size_t end = MIN2(cur + stride, max); if (start >= max) break; for (size_t idx = start; idx < end; idx++) { --- 262,272 ---- GrowableArray<ShenandoahNMethod*>* list = ShenandoahCodeRoots::_recorded_nms; size_t max = (size_t)list->length(); while (_claimed < max) { ! size_t cur = Atomic::add(&_claimed, stride) - stride; size_t start = cur; size_t end = MIN2(cur + stride, max); if (start >= max) break; for (size_t idx = start; idx < end; idx++) {
< prev index next >