# HG changeset patch # User Peter Hofer # Date 1314202623 -7200 # Node ID 6e8fc93551d7c9105327595e97f252150f55e73e # Parent f70a4cc629e74b6f09803a5904069fc357017d41 Implement ArithmeticSin(), ArithmeticCos() and ArithmeticTan() runtime calls diff -r f70a4cc629e7 -r 6e8fc93551d7 src/share/vm/graal/graalCodeInstaller.cpp --- a/src/share/vm/graal/graalCodeInstaller.cpp Wed Aug 24 17:46:51 2011 +0200 +++ b/src/share/vm/graal/graalCodeInstaller.cpp Wed Aug 24 18:17:03 2011 +0200 @@ -625,6 +625,18 @@ call->set_destination(Runtime1::entry_for(Runtime1::graal_arithmetic_drem_id)); _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); TRACE_graal_3("CiRuntimeCall::ArithmeticDrem()"); + } else if (runtime_call == CiRuntimeCall::ArithmeticSin()) { + call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dsin)); + _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); + TRACE_graal_3("CiRuntimeCall::ArithmeticSin()"); + } else if (runtime_call == CiRuntimeCall::ArithmeticCos()) { + call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dcos)); + _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); + TRACE_graal_3("CiRuntimeCall::ArithmeticCos()"); + } else if (runtime_call == CiRuntimeCall::ArithmeticTan()) { + call->set_destination(CAST_FROM_FN_PTR(address, SharedRuntime::dtan)); + _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand); + TRACE_graal_3("CiRuntimeCall::ArithmeticTan()"); } else if (runtime_call == CiRuntimeCall::RegisterFinalizer()) { call->set_destination(Runtime1::entry_for(Runtime1::register_finalizer_id)); _instructions->relocate(call->instruction_address(), runtime_call_Relocation::spec(), Assembler::call32_operand);