mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-19 02:24:40 +02:00
8026495: JVM Crashes when started with -XX:+DTraceMethodProbes on Solaris x86_64
Fix wrong calling convention in LIR_Assembler::emit_unwind_handler(), T_METADATA support in calling convention generator, C1 register allocator Reviewed-by: twisti, jrose
This commit is contained in:
parent
1b5bd82335
commit
1c047b640d
6 changed files with 24 additions and 14 deletions
|
@ -1175,7 +1175,7 @@ void LIRGenerator::do_Return(Return* x) {
|
|||
if (compilation()->env()->dtrace_method_probes()) {
|
||||
BasicTypeList signature;
|
||||
signature.append(LP64_ONLY(T_LONG) NOT_LP64(T_INT)); // thread
|
||||
signature.append(T_OBJECT); // Method*
|
||||
signature.append(T_METADATA); // Method*
|
||||
LIR_OprList* args = new LIR_OprList();
|
||||
args->append(getThreadPointer());
|
||||
LIR_Opr meth = new_register(T_METADATA);
|
||||
|
@ -2720,7 +2720,7 @@ void LIRGenerator::do_Base(Base* x) {
|
|||
if (compilation()->env()->dtrace_method_probes()) {
|
||||
BasicTypeList signature;
|
||||
signature.append(LP64_ONLY(T_LONG) NOT_LP64(T_INT)); // thread
|
||||
signature.append(T_OBJECT); // Method*
|
||||
signature.append(T_METADATA); // Method*
|
||||
LIR_OprList* args = new LIR_OprList();
|
||||
args->append(getThreadPointer());
|
||||
LIR_Opr meth = new_register(T_METADATA);
|
||||
|
@ -3331,7 +3331,7 @@ void LIRGenerator::do_RuntimeCall(RuntimeCall* x) {
|
|||
BasicTypeList* signature = new BasicTypeList(x->number_of_arguments());
|
||||
|
||||
if (x->pass_thread()) {
|
||||
signature->append(T_ADDRESS);
|
||||
signature->append(LP64_ONLY(T_LONG) NOT_LP64(T_INT)); // thread
|
||||
args->append(getThreadPointer());
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue