Mercurial > hg > truffle
comparison src/share/vm/graal/graalCodeInstaller.cpp @ 3558:bc95d122df79
added runtime call to supply info upon deoptimization
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Wed, 24 Aug 2011 17:40:12 +0200 |
parents | 22d11b3bc561 |
children | 6e8fc93551d7 |
comparison
equal
deleted
inserted
replaced
3557:b2cd623a93ad | 3558:bc95d122df79 |
---|---|
595 TRACE_graal_3("CiRuntimeCall::UnwindException()"); | 595 TRACE_graal_3("CiRuntimeCall::UnwindException()"); |
596 } else if (runtime_call == CiRuntimeCall::HandleException()) { | 596 } else if (runtime_call == CiRuntimeCall::HandleException()) { |
597 call->set_destination(Runtime1::entry_for(Runtime1::graal_handle_exception_id)); | 597 call->set_destination(Runtime1::entry_for(Runtime1::graal_handle_exception_id)); |
598 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | 598 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); |
599 TRACE_graal_3("CiRuntimeCall::HandleException()"); | 599 TRACE_graal_3("CiRuntimeCall::HandleException()"); |
600 } else if (runtime_call == CiRuntimeCall::SetDeoptInfo()) { | |
601 call->set_destination(Runtime1::entry_for(Runtime1::graal_set_deopt_info_id)); | |
602 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | |
603 TRACE_graal_3("CiRuntimeCall::SetDeoptInfo()"); | |
600 } else if (runtime_call == CiRuntimeCall::CreateNullPointerException()) { | 604 } else if (runtime_call == CiRuntimeCall::CreateNullPointerException()) { |
601 call->set_destination(Runtime1::entry_for(Runtime1::graal_create_null_pointer_exception_id)); | 605 call->set_destination(Runtime1::entry_for(Runtime1::graal_create_null_pointer_exception_id)); |
602 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | 606 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); |
603 TRACE_graal_3("CiRuntimeCall::CreateNullPointerException()"); | 607 TRACE_graal_3("CiRuntimeCall::CreateNullPointerException()"); |
604 } else if (runtime_call == CiRuntimeCall::CreateOutOfBoundsException()) { | 608 } else if (runtime_call == CiRuntimeCall::CreateOutOfBoundsException()) { |