Mercurial > hg > truffle
comparison src/share/vm/graal/graalCodeInstaller.cpp @ 3560:6e8fc93551d7
Implement ArithmeticSin(), ArithmeticCos() and ArithmeticTan() runtime calls
author | Peter Hofer <peter.hofer@jku.at> |
---|---|
date | Wed, 24 Aug 2011 18:17:03 +0200 |
parents | bc95d122df79 |
children | bea018622324 |
comparison
equal
deleted
inserted
replaced
3559:f70a4cc629e7 | 3560:6e8fc93551d7 |
---|---|
623 TRACE_graal_3("CiRuntimeCall::ArithmeticFrem()"); | 623 TRACE_graal_3("CiRuntimeCall::ArithmeticFrem()"); |
624 } else if (runtime_call == CiRuntimeCall::ArithmeticDrem()) { | 624 } else if (runtime_call == CiRuntimeCall::ArithmeticDrem()) { |
625 call->set_destination(Runtime1::entry_for(Runtime1::graal_arithmetic_drem_id)); | 625 call->set_destination(Runtime1::entry_for(Runtime1::graal_arithmetic_drem_id)); |
626 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | 626 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); |
627 TRACE_graal_3("CiRuntimeCall::ArithmeticDrem()"); | 627 TRACE_graal_3("CiRuntimeCall::ArithmeticDrem()"); |
628 } else if (runtime_call == CiRuntimeCall::ArithmeticSin()) { | |
629 call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dsin)); | |
630 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | |
631 TRACE_graal_3("CiRuntimeCall::ArithmeticSin()"); | |
632 } else if (runtime_call == CiRuntimeCall::ArithmeticCos()) { | |
633 call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dcos)); | |
634 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | |
635 TRACE_graal_3("CiRuntimeCall::ArithmeticCos()"); | |
636 } else if (runtime_call == CiRuntimeCall::ArithmeticTan()) { | |
637 call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dtan)); | |
638 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | |
639 TRACE_graal_3("CiRuntimeCall::ArithmeticTan()"); | |
628 } else if (runtime_call == CiRuntimeCall::RegisterFinalizer()) { | 640 } else if (runtime_call == CiRuntimeCall::RegisterFinalizer()) { |
629 call->set_destination(Runtime1::entry_for(Runtime1::register_finalizer_id)); | 641 call->set_destination(Runtime1::entry_for(Runtime1::register_finalizer_id)); |
630 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); | 642 _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); |
631 } else if (runtime_call == CiRuntimeCall::Deoptimize()) { | 643 } else if (runtime_call == CiRuntimeCall::Deoptimize()) { |
632 call->set_destination(SharedRuntime::deopt_blob()->uncommon_trap()); | 644 call->set_destination(SharedRuntime::deopt_blob()->uncommon_trap()); |