--- a/hotspot/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Thu Oct 15 13:28:22 2015 +0200
+++ b/hotspot/src/cpu/aarch64/vm/compiledIC_aarch64.cpp Sat Oct 17 19:40:30 2015 -0400
@@ -51,13 +51,15 @@
// ----------------------------------------------------------------------------
#define __ _masm.
-address CompiledStaticCall::emit_to_interp_stub(CodeBuffer &cbuf) {
+address CompiledStaticCall::emit_to_interp_stub(CodeBuffer &cbuf, address mark) {
// Stub is fixed up when the corresponding call is converted from
// calling compiled code to calling interpreted code.
// mov rmethod, 0
// jmp -4 # to self
- address mark = cbuf.insts_mark(); // Get mark within main instrs section.
+ if (mark == NULL) {
+ mark = cbuf.insts_mark(); // Get mark within main instrs section.
+ }
// Note that the code buffer's insts_mark is always relative to insts.
// That's why we must use the macroassembler to generate a stub.