diff --git a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp index 6f4cd015e5a..1cd6e171c6e 100644 --- a/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp +++ b/src/hotspot/cpu/aarch64/stubGenerator_aarch64.cpp @@ -1340,10 +1340,10 @@ class StubGenerator: public StubCodeGenerator { __ ldr(temp, Address(a, rscratch2, Address::lsl(exact_log2(size)))); __ verify_oop(temp); } else { - __ ldrw(r16, Address(a, rscratch2, Address::lsl(exact_log2(size)))); + __ ldrw(temp, Address(a, rscratch2, Address::lsl(exact_log2(size)))); __ decode_heap_oop(temp); // calls verify_oop } - __ add(rscratch2, rscratch2, size); + __ add(rscratch2, rscratch2, 1); __ b(loop); __ bind(end); }