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

src/cpu/x86/vm/vtableStubs_x86_64.cpp

Print this page

        

*** 63,73 **** __ incrementl(ExternalAddress((address) SharedRuntime::nof_megamorphic_calls_addr())); } #endif // get receiver (need to skip return address on top of stack) ! assert(VtableStub::receiver_location() == j_rarg0->as_VMReg(), "receiver expected in j_rarg0"); // Free registers (non-args) are rax, rbx // get receiver klass address npe_addr = __ pc(); --- 63,73 ---- __ incrementl(ExternalAddress((address) SharedRuntime::nof_megamorphic_calls_addr())); } #endif // get receiver (need to skip return address on top of stack) ! assert(VtableStub::receiver_location() == j_rarg0.as_VMReg(), "receiver expected in j_rarg0"); // Free registers (non-args) are rax, rbx // get receiver klass address npe_addr = __ pc();
*** 152,162 **** // Free registers (non-args) are rax (interface), rbx // get receiver (need to skip return address on top of stack) ! assert(VtableStub::receiver_location() == j_rarg0->as_VMReg(), "receiver expected in j_rarg0"); // get receiver klass (also an implicit null-check) address npe_addr = __ pc(); // Most registers are in use; we'll use rax, rbx, r10, r11 // (various calling sequences use r[cd]x, r[sd]i, r[89]; stay away from them) --- 152,162 ---- // Free registers (non-args) are rax (interface), rbx // get receiver (need to skip return address on top of stack) ! assert(VtableStub::receiver_location() == j_rarg0.as_VMReg(), "receiver expected in j_rarg0"); // get receiver klass (also an implicit null-check) address npe_addr = __ pc(); // Most registers are in use; we'll use rax, rbx, r10, r11 // (various calling sequences use r[cd]x, r[sd]i, r[89]; stay away from them)
src/cpu/x86/vm/vtableStubs_x86_64.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File