< prev index next >

src/hotspot/share/gc/z/zNMethodTableIteration.cpp

Print this page

        

*** 56,66 **** void ZNMethodTableIteration::nmethods_do(NMethodClosure* cl) { for (;;) { // Claim table partition. Each partition is currently sized to span // two cache lines. This number is just a guess, but seems to work well. const size_t partition_size = (ZCacheLineSize * 2) / sizeof(ZNMethodTableEntry); ! const size_t partition_start = MIN2(Atomic::add(partition_size, &_claimed) - partition_size, _size); const size_t partition_end = MIN2(partition_start + partition_size, _size); if (partition_start == partition_end) { // End of table break; } --- 56,66 ---- void ZNMethodTableIteration::nmethods_do(NMethodClosure* cl) { for (;;) { // Claim table partition. Each partition is currently sized to span // two cache lines. This number is just a guess, but seems to work well. const size_t partition_size = (ZCacheLineSize * 2) / sizeof(ZNMethodTableEntry); ! const size_t partition_start = MIN2(Atomic::add(&_claimed, partition_size) - partition_size, _size); const size_t partition_end = MIN2(partition_start + partition_size, _size); if (partition_start == partition_end) { // End of table break; }
< prev index next >