This is a follow-on of JDK-8145221. The coding should be fairly simple, but we want to check for the performance impact.
The following places in CPU-specific code is impacted.
./src/cpu/ppc/vm/interp_masm_ppc_64.cpp: ld(Rtarget_addr, in_bytes(Method::interpreter_entry_offset()), Rtarget_method);
./src/cpu/ppc/vm/methodHandles_ppc.cpp: __ ld(target, in_bytes(Method::interpreter_entry_offset()), R19_method);
./src/cpu/x86/vm/sharedRuntime_x86_64.cpp: __ movptr(rcx, Address(rbx, in_bytes(Method::interpreter_entry_offset())));
./src/cpu/x86/vm/sharedRuntime_x86_32.cpp: __ movptr(rcx, Address(rbx, in_bytes(Method::interpreter_entry_offset())));
./src/cpu/x86/vm/interp_masm_x86.cpp: jmp(Address(method, Method::interpreter_entry_offset()));
./src/cpu/x86/vm/methodHandles_x86.cpp: __ jmp(Address(method, Method::interpreter_entry_offset()));
./src/cpu/aarch64/vm/templateTable_aarch64.cpp: // __ ldr(r3, Address(method, Method::interpreter_entry_offset()));
./src/cpu/aarch64/vm/interp_masm_aarch64.cpp: ldr(rscratch1, Address(method, Method::interpreter_entry_offset()));
./src/cpu/aarch64/vm/sharedRuntime_aarch64.cpp: __ ldr(rscratch1, Address(rmethod, in_bytes(Method::interpreter_entry_offset())));
./src/cpu/aarch64/vm/methodHandles_aarch64.cpp: __ ldr(rscratch1, Address(method, Method::interpreter_entry_offset()));
./src/cpu/sparc/vm/methodHandles_sparc.cpp: __ ld_ptr(G5_method, in_bytes(Method::interpreter_entry_offset()), target);
./src/cpu/sparc/vm/interp_masm_sparc.cpp: delayed()->ld_ptr(G5_method, in_bytes(Method::interpreter_entry_offset()), target);
./src/cpu/sparc/vm/sharedRuntime_sparc.cpp: __ ld_ptr(G5_method, in_bytes(Method::interpreter_entry_offset()), G3_scratch);
./src/closed/cpu/arm/vm/methodHandles_arm.cpp: __ indirect_jump(Address(Rmethod, Method::interpreter_entry_offset()), Rtemp);
./src/closed/cpu/arm/vm/methodHandles_arm.cpp: __ ldr(PC, Address(Rmethod, Method::interpreter_entry_offset()), ne);
./src/closed/cpu/arm/vm/sharedRuntime_arm.cpp: __ ldr(tmp, Address(Rmethod, Method::interpreter_entry_offset()));
./src/closed/cpu/arm/vm/sharedRuntime_arm.cpp: __ ldr(PC, Address(Rmethod, Method::interpreter_entry_offset()));
./src/closed/cpu/arm/vm/interp_masm_arm.cpp: indirect_jump(Address(method, Method::interpreter_entry_offset()), Rtemp);
./src/closed/cpu/arm/vm/interp_masm_arm.cpp: ldr(PC, Address(method, Method::interpreter_entry_offset()), ne);