src/cpu/x86/vm/x86_64.ad
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hotspot Cdiff src/cpu/x86/vm/x86_64.ad

src/cpu/x86/vm/x86_64.ad

Print this page

        

*** 2118,2143 **** // determine who we intended to call. cbuf.set_insts_mark(); $$$emit8$primary; if (!_method) { ! emit_d32_reloc(cbuf, ! (int) ($meth$$method - ((intptr_t) cbuf.insts_end()) - 4), runtime_call_Relocation::spec(), RELOC_DISP32); - } else if (_optimized_virtual) { - emit_d32_reloc(cbuf, - (int) ($meth$$method - ((intptr_t) cbuf.insts_end()) - 4), - opt_virtual_call_Relocation::spec(), - RELOC_DISP32); } else { ! emit_d32_reloc(cbuf, ! (int) ($meth$$method - ((intptr_t) cbuf.insts_end()) - 4), ! static_call_Relocation::spec(), ! RELOC_DISP32); ! } ! if (_method) { // Emit stubs for static call. address mark = cbuf.insts_mark(); address stub = CompiledStaticCall::emit_to_interp_stub(cbuf, mark); if (stub == NULL) { ciEnv::current()->record_failure("CodeCache is full"); --- 2118,2136 ---- // determine who we intended to call. cbuf.set_insts_mark(); $$$emit8$primary; if (!_method) { ! emit_d32_reloc(cbuf, (int) ($meth$$method - ((intptr_t) cbuf.insts_end()) - 4), runtime_call_Relocation::spec(), RELOC_DISP32); } else { ! int method_index = resolved_method_index(cbuf); ! RelocationHolder rspec = _optimized_virtual ? opt_virtual_call_Relocation::spec(method_index) ! : static_call_Relocation::spec(method_index); ! emit_d32_reloc(cbuf, (int) ($meth$$method - ((intptr_t) cbuf.insts_end()) - 4), ! rspec, RELOC_DISP32); // Emit stubs for static call. address mark = cbuf.insts_mark(); address stub = CompiledStaticCall::emit_to_interp_stub(cbuf, mark); if (stub == NULL) { ciEnv::current()->record_failure("CodeCache is full");
*** 2146,2156 **** } %} enc_class Java_Dynamic_Call(method meth) %{ MacroAssembler _masm(&cbuf); ! __ ic_call((address)$meth$$method); %} enc_class Java_Compiled_Call(method meth) %{ // JAVA COMPILED CALL --- 2139,2149 ---- } %} enc_class Java_Dynamic_Call(method meth) %{ MacroAssembler _masm(&cbuf); ! __ ic_call((address)$meth$$method, resolved_method_index(cbuf)); %} enc_class Java_Compiled_Call(method meth) %{ // JAVA COMPILED CALL
src/cpu/x86/vm/x86_64.ad
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File