mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 18:44:38 +02:00
6988018: dtrace/hotspot/MethodInvocation/MethodInvocation002 crashes with client compiler
Reviewed-by: iveresov, kvn, kamg
This commit is contained in:
parent
c5191a8103
commit
84e48aee05
2 changed files with 5 additions and 2 deletions
|
@ -420,7 +420,8 @@ int LIR_Assembler::emit_unwind_handler() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (compilation()->env()->dtrace_method_probes()) {
|
if (compilation()->env()->dtrace_method_probes()) {
|
||||||
jobject2reg(method()->constant_encoding(), O0);
|
__ mov(G2_thread, O0);
|
||||||
|
jobject2reg(method()->constant_encoding(), O1);
|
||||||
__ call(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit), relocInfo::runtime_call_type);
|
__ call(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit), relocInfo::runtime_call_type);
|
||||||
__ delayed()->nop();
|
__ delayed()->nop();
|
||||||
}
|
}
|
||||||
|
|
|
@ -488,7 +488,9 @@ int LIR_Assembler::emit_unwind_handler() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (compilation()->env()->dtrace_method_probes()) {
|
if (compilation()->env()->dtrace_method_probes()) {
|
||||||
__ movoop(Address(rsp, 0), method()->constant_encoding());
|
__ get_thread(rax);
|
||||||
|
__ movptr(Address(rsp, 0), rax);
|
||||||
|
__ movoop(Address(rsp, sizeof(void*)), method()->constant_encoding());
|
||||||
__ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit)));
|
__ call(RuntimeAddress(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_method_exit)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue