< prev index next >
src/hotspot/cpu/aarch64/vtableStubs_aarch64.cpp
Print this page
rev 54670 : Port of valuetypes to aarch64
*** 114,135 ****
#ifndef PRODUCT
if (DebugVtables) {
Label L;
__ cbz(rmethod, L);
! __ ldr(rscratch1, Address(rmethod, Method::from_compiled_offset()));
__ cbnz(rscratch1, L);
__ stop("Vtable entry is NULL");
__ bind(L);
}
#endif // PRODUCT
// r0: receiver klass
// rmethod: Method*
// r2: receiver
address ame_addr = __ pc();
! __ ldr(rscratch1, Address(rmethod, Method::from_compiled_offset()));
__ br(rscratch1);
masm->flush();
bookkeeping(masm, tty, s, npe_addr, ame_addr, true, vtable_index, slop_bytes, 0);
--- 114,135 ----
#ifndef PRODUCT
if (DebugVtables) {
Label L;
__ cbz(rmethod, L);
! __ ldr(rscratch1, Address(rmethod, Method::from_compiled_value_ro_offset()));
__ cbnz(rscratch1, L);
__ stop("Vtable entry is NULL");
__ bind(L);
}
#endif // PRODUCT
// r0: receiver klass
// rmethod: Method*
// r2: receiver
address ame_addr = __ pc();
! __ ldr(rscratch1, Address(rmethod, Method::from_compiled_value_ro_offset()));
__ br(rscratch1);
masm->flush();
bookkeeping(masm, tty, s, npe_addr, ame_addr, true, vtable_index, slop_bytes, 0);
< prev index next >