changeset 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 f70a4cc629e7
children bea018622324
files src/share/vm/graal/graalCodeInstaller.cpp
diffstat 1 files changed, 12 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- 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);