--- old/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp 2017-08-11 17:43:04.716092528 -0400 +++ new/src/cpu/aarch64/vm/macroAssembler_aarch64.cpp 2017-08-11 17:43:04.397003804 -0400 @@ -3279,6 +3279,12 @@ } } +// ((OopHandle)result).resolve(); +void MacroAssembler::resolve_oop_handle(Register result) { + // OopHandle::resolve is an indirection. + ldr(result, Address(result, 0)); +} + void MacroAssembler::load_mirror(Register dst, Register method) { const int mirror_offset = in_bytes(Klass::java_mirror_offset()); ldr(dst, Address(rmethod, Method::const_offset()));