--- a/src/hotspot/share/gc/g1/heapRegion.inline.hpp Mon Nov 25 12:32:40 2019 +0100
+++ b/src/hotspot/share/gc/g1/heapRegion.inline.hpp Mon Nov 25 12:33:15 2019 +0100
@@ -61,7 +61,7 @@
size_t want_to_allocate = MIN2(available, desired_word_size);
if (want_to_allocate >= min_word_size) {
HeapWord* new_top = obj + want_to_allocate;
- HeapWord* result = Atomic::cmpxchg(new_top, &_top, obj);
+ HeapWord* result = Atomic::cmpxchg(&_top, obj, new_top);
// result can be one of two:
// the old top value: the exchange succeeded
// otherwise: the new value of the top is returned.