summaryrefslogtreecommitdiff
path: root/src/classlibnative
diff options
context:
space:
mode:
authorTanner Gooding <tagoo@outlook.com>2017-12-09 09:53:51 -0800
committerTanner Gooding <tagoo@outlook.com>2017-12-13 10:37:55 -0800
commitecf4dc8e206b9e2aa16bed35e63eb6ea3133c19d (patch)
treec80817365078a596a03a5634d7810e0ee6348b98 /src/classlibnative
parent1971e79c5be185825a23b3a1f0c7bb950c14029d (diff)
downloadcoreclr-ecf4dc8e206b9e2aa16bed35e63eb6ea3133c19d.tar.gz
coreclr-ecf4dc8e206b9e2aa16bed35e63eb6ea3133c19d.tar.bz2
coreclr-ecf4dc8e206b9e2aa16bed35e63eb6ea3133c19d.zip
Adding support for Acosh, Asinh, Atanh, and Cbrt to Math and MathF
Diffstat (limited to 'src/classlibnative')
-rw-r--r--src/classlibnative/float/floatdouble.cpp36
-rw-r--r--src/classlibnative/float/floatsingle.cpp36
-rw-r--r--src/classlibnative/inc/floatdouble.h4
-rw-r--r--src/classlibnative/inc/floatsingle.h4
4 files changed, 80 insertions, 0 deletions
diff --git a/src/classlibnative/float/floatdouble.cpp b/src/classlibnative/float/floatdouble.cpp
index f554082ae6..5911901000 100644
--- a/src/classlibnative/float/floatdouble.cpp
+++ b/src/classlibnative/float/floatdouble.cpp
@@ -60,6 +60,15 @@ FCIMPL1_V(double, COMDouble::Acos, double x)
return (double)acos(x);
FCIMPLEND
+/*=====================================Acosh====================================
+**
+==============================================================================*/
+FCIMPL1_V(double, COMDouble::Acosh, double x)
+ FCALL_CONTRACT;
+
+ return (double)acosh(x);
+FCIMPLEND
+
/*=====================================Asin=====================================
**
==============================================================================*/
@@ -69,6 +78,15 @@ FCIMPL1_V(double, COMDouble::Asin, double x)
return (double)asin(x);
FCIMPLEND
+/*=====================================Asinh====================================
+**
+==============================================================================*/
+FCIMPL1_V(double, COMDouble::Asinh, double x)
+ FCALL_CONTRACT;
+
+ return (double)asinh(x);
+FCIMPLEND
+
/*=====================================Atan=====================================
**
==============================================================================*/
@@ -78,6 +96,15 @@ FCIMPL1_V(double, COMDouble::Atan, double x)
return (double)atan(x);
FCIMPLEND
+/*=====================================Atanh====================================
+**
+==============================================================================*/
+FCIMPL1_V(double, COMDouble::Atanh, double x)
+ FCALL_CONTRACT;
+
+ return (double)atanh(x);
+FCIMPLEND
+
/*=====================================Atan2====================================
**
==============================================================================*/
@@ -87,6 +114,15 @@ FCIMPL2_VV(double, COMDouble::Atan2, double y, double x)
return (double)atan2(y, x);
FCIMPLEND
+/*====================================Cbrt======================================
+**
+==============================================================================*/
+FCIMPL1_V(double, COMDouble::Cbrt, double x)
+ FCALL_CONTRACT;
+
+ return (double)cbrt(x);
+FCIMPLEND
+
/*====================================Ceil======================================
**
==============================================================================*/
diff --git a/src/classlibnative/float/floatsingle.cpp b/src/classlibnative/float/floatsingle.cpp
index b56174794d..0be1ad7318 100644
--- a/src/classlibnative/float/floatsingle.cpp
+++ b/src/classlibnative/float/floatsingle.cpp
@@ -58,6 +58,15 @@ FCIMPL1_V(float, COMSingle::Acos, float x)
return (float)acosf(x);
FCIMPLEND
+/*=====================================Acosh====================================
+**
+==============================================================================*/
+FCIMPL1_V(float, COMSingle::Acosh, float x)
+ FCALL_CONTRACT;
+
+ return (float)acoshf(x);
+FCIMPLEND
+
/*=====================================Asin=====================================
**
==============================================================================*/
@@ -67,6 +76,15 @@ FCIMPL1_V(float, COMSingle::Asin, float x)
return (float)asinf(x);
FCIMPLEND
+/*=====================================Asinh====================================
+**
+==============================================================================*/
+FCIMPL1_V(float, COMSingle::Asinh, float x)
+ FCALL_CONTRACT;
+
+ return (float)asinhf(x);
+FCIMPLEND
+
/*=====================================Atan=====================================
**
==============================================================================*/
@@ -76,6 +94,15 @@ FCIMPL1_V(float, COMSingle::Atan, float x)
return (float)atanf(x);
FCIMPLEND
+/*=====================================Atanh====================================
+**
+==============================================================================*/
+FCIMPL1_V(float, COMSingle::Atanh, float x)
+ FCALL_CONTRACT;
+
+ return (float)atanhf(x);
+FCIMPLEND
+
/*=====================================Atan2====================================
**
==============================================================================*/
@@ -85,6 +112,15 @@ FCIMPL2_VV(float, COMSingle::Atan2, float y, float x)
return (float)atan2f(y, x);
FCIMPLEND
+/*====================================Cbrt======================================
+**
+==============================================================================*/
+FCIMPL1_V(float, COMSingle::Cbrt, float x)
+ FCALL_CONTRACT;
+
+ return (float)cbrtf(x);
+FCIMPLEND
+
/*====================================Ceil======================================
**
==============================================================================*/
diff --git a/src/classlibnative/inc/floatdouble.h b/src/classlibnative/inc/floatdouble.h
index f7412a22f1..d2c819f544 100644
--- a/src/classlibnative/inc/floatdouble.h
+++ b/src/classlibnative/inc/floatdouble.h
@@ -12,9 +12,13 @@ class COMDouble {
public:
FCDECL1_V(static double, Abs, double x);
FCDECL1_V(static double, Acos, double x);
+ FCDECL1_V(static double, Acosh, double x);
FCDECL1_V(static double, Asin, double x);
+ FCDECL1_V(static double, Asinh, double x);
FCDECL1_V(static double, Atan, double x);
+ FCDECL1_V(static double, Atanh, double x);
FCDECL2_VV(static double, Atan2, double y, double x);
+ FCDECL1_V(static double, Cbrt, double x);
FCDECL1_V(static double, Ceil, double x);
FCDECL1_V(static double, Cos, double x);
FCDECL1_V(static double, Cosh, double x);
diff --git a/src/classlibnative/inc/floatsingle.h b/src/classlibnative/inc/floatsingle.h
index 0124768a05..a4f9cb73df 100644
--- a/src/classlibnative/inc/floatsingle.h
+++ b/src/classlibnative/inc/floatsingle.h
@@ -12,9 +12,13 @@ class COMSingle {
public:
FCDECL1_V(static float, Abs, float x);
FCDECL1_V(static float, Acos, float x);
+ FCDECL1_V(static float, Acosh, float x);
FCDECL1_V(static float, Asin, float x);
+ FCDECL1_V(static float, Asinh, float x);
FCDECL1_V(static float, Atan, float x);
+ FCDECL1_V(static float, Atanh, float x);
FCDECL2_VV(static float, Atan2, float y, float x);
+ FCDECL1_V(static float, Cbrt, float x);
FCDECL1_V(static float, Ceil, float x);
FCDECL1_V(static float, Cos, float x);
FCDECL1_V(static float, Cosh, float x);