src/hotspot/share/gc/g1/heapRegionRemSet.cpp
changeset 59252 623722a6aeb9
parent 59247 56bf71d64d51
equal deleted inserted replaced
59251:4cbfa5077d68 59252:623722a6aeb9
    44 
    44 
    45 PerRegionTable* PerRegionTable::alloc(HeapRegion* hr) {
    45 PerRegionTable* PerRegionTable::alloc(HeapRegion* hr) {
    46   PerRegionTable* fl = _free_list;
    46   PerRegionTable* fl = _free_list;
    47   while (fl != NULL) {
    47   while (fl != NULL) {
    48     PerRegionTable* nxt = fl->next();
    48     PerRegionTable* nxt = fl->next();
    49     PerRegionTable* res = Atomic::cmpxchg(nxt, &_free_list, fl);
    49     PerRegionTable* res = Atomic::cmpxchg(&_free_list, fl, nxt);
    50     if (res == fl) {
    50     if (res == fl) {
    51       fl->init(hr, true);
    51       fl->init(hr, true);
    52       return fl;
    52       return fl;
    53     } else {
    53     } else {
    54       fl = _free_list;
    54       fl = _free_list;