--- old/src/cpu/aarch64/vm/compiledIC_aarch64.cpp 2015-10-08 07:22:58.000000000 -1000 +++ new/src/cpu/aarch64/vm/compiledIC_aarch64.cpp 2015-10-08 07:22:58.000000000 -1000 @@ -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.