486 __ unlock_object(rdi, rbx, rax, *stub->entry()); |
486 __ unlock_object(rdi, rbx, rax, *stub->entry()); |
487 __ bind(*stub->continuation()); |
487 __ bind(*stub->continuation()); |
488 } |
488 } |
489 |
489 |
490 if (compilation()->env()->dtrace_method_probes()) { |
490 if (compilation()->env()->dtrace_method_probes()) { |
491 __ movoop(Address(rsp, 0), method()->constant_encoding()); |
491 __ get_thread(rax); |
|
492 __ movptr(Address(rsp, 0), rax); |
|
493 __ movoop(Address(rsp, sizeof(void*)), method()->constant_encoding()); |
492 __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit))); |
494 __ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit))); |
493 } |
495 } |
494 |
496 |
495 if (method()->is_synchronized() || compilation()->env()->dtrace_method_probes()) { |
497 if (method()->is_synchronized() || compilation()->env()->dtrace_method_probes()) { |
496 __ mov(rax, rsi); // Restore the exception |
498 __ mov(rax, rsi); // Restore the exception |