--- old/src/hotspot/share/gc/g1/g1ConcurrentMark.cpp 2017-10-13 18:24:18.696809499 -0400 +++ new/src/hotspot/share/gc/g1/g1ConcurrentMark.cpp 2017-10-13 18:24:18.324768045 -0400 @@ -1870,7 +1870,7 @@ HeapWord* end = curr_region != NULL ? curr_region->end() : finger + HeapRegion::GrainWords; // Is the gap between reading the finger and doing the CAS too long? - HeapWord* res = (HeapWord*) Atomic::cmpxchg_ptr(end, &_finger, finger); + HeapWord* res = Atomic::cmpxchg(end, &_finger, finger); if (res == finger && curr_region != NULL) { // we succeeded HeapWord* bottom = curr_region->bottom();