Index: runtime/vm/intermediate_language.cc |
diff --git a/runtime/vm/intermediate_language.cc b/runtime/vm/intermediate_language.cc |
index ba426c8594450daaf4584da1ad841e63fc96bc0f..bcc0a91645e63a4a334e9748e4b805b408bef76d 100644 |
--- a/runtime/vm/intermediate_language.cc |
+++ b/runtime/vm/intermediate_language.cc |
@@ -3544,6 +3544,9 @@ intptr_t InvokeMathCFunctionInstr::ArgumentCountFor( |
} |
case MethodRecognizer::kDoubleRound: |
case MethodRecognizer::kMathAtan: |
+ case MethodRecognizer::kMathTan: |
+ case MethodRecognizer::kMathAcos: |
+ case MethodRecognizer::kMathAsin: |
return 1; |
case MethodRecognizer::kDoubleMod: |
case MethodRecognizer::kMathDoublePow: |
@@ -3587,6 +3590,30 @@ DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcRound, 1, true /* is_float */, |
reinterpret_cast<RuntimeFunction>( |
static_cast<UnaryMathCFunction>(&round))); |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcCos, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&cos))); |
+ |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcSin, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&sin))); |
+ |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcAsin, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&asin))); |
+ |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcAcos, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&acos))); |
+ |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcTan, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&tan))); |
+ |
+DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcAtan, 1, true /* is_float */, |
+ reinterpret_cast<RuntimeFunction>( |
+ static_cast<UnaryMathCFunction>(&atan))); |
+ |
const RuntimeEntry& InvokeMathCFunctionInstr::TargetFunction() const { |
switch (recognized_kind_) { |
@@ -3602,6 +3629,12 @@ const RuntimeEntry& InvokeMathCFunctionInstr::TargetFunction() const { |
return kLibcPowRuntimeEntry; |
case MethodRecognizer::kDoubleMod: |
return kDartModuloRuntimeEntry; |
+ case MethodRecognizer::kMathTan: |
+ return kLibcTanRuntimeEntry; |
+ case MethodRecognizer::kMathAsin: |
+ return kLibcAsinRuntimeEntry; |
+ case MethodRecognizer::kMathAcos: |
+ return kLibcAcosRuntimeEntry; |
case MethodRecognizer::kMathAtan: |
return kLibcAtanRuntimeEntry; |
case MethodRecognizer::kMathAtan2: |
@@ -3613,18 +3646,6 @@ const RuntimeEntry& InvokeMathCFunctionInstr::TargetFunction() const { |
} |
-DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcCos, 1, true /* is_float */, |
- reinterpret_cast<RuntimeFunction>( |
- static_cast<UnaryMathCFunction>(&cos))); |
- |
-DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcSin, 1, true /* is_float */, |
- reinterpret_cast<RuntimeFunction>( |
- static_cast<UnaryMathCFunction>(&sin))); |
- |
-DEFINE_RAW_LEAF_RUNTIME_ENTRY(LibcAtan, 1, true /* is_float */, |
- reinterpret_cast<RuntimeFunction>( |
- static_cast<UnaryMathCFunction>(&atan))); |
- |
const RuntimeEntry& MathUnaryInstr::TargetFunction() const { |
switch (kind()) { |
case MathUnaryInstr::kSin: |