src/hotspot/share/gc/shenandoah/shenandoahCodeRoots.cpp
changeset 59252 623722a6aeb9
parent 59249 29b0d0b61615
child 59290 97d13893ec3c
equal deleted inserted replaced
59251:4cbfa5077d68 59252:623722a6aeb9
    79 
    79 
    80   for (CodeBlob *cb = CodeCache::first_blob(_heap); cb != NULL; cb = CodeCache::next_blob(_heap, cb)) {
    80   for (CodeBlob *cb = CodeCache::first_blob(_heap); cb != NULL; cb = CodeCache::next_blob(_heap, cb)) {
    81     int current = count++;
    81     int current = count++;
    82     if ((current & stride_mask) == 0) {
    82     if ((current & stride_mask) == 0) {
    83       process_block = (current >= _claimed_idx) &&
    83       process_block = (current >= _claimed_idx) &&
    84                       (Atomic::cmpxchg(current + stride, &_claimed_idx, current) == current);
    84                       (Atomic::cmpxchg(&_claimed_idx, current, current + stride) == current);
    85     }
    85     }
    86     if (process_block) {
    86     if (process_block) {
    87       if (cb->is_alive()) {
    87       if (cb->is_alive()) {
    88         f->do_code_blob(cb);
    88         f->do_code_blob(cb);
    89 #ifdef ASSERT
    89 #ifdef ASSERT