Module: wine Branch: master Commit: e084240415f8f1b31362b1519675b4613d4afded URL: http://source.winehq.org/git/wine.git/?a=commit;h=e084240415f8f1b31362b15196...
Author: Daniel Lehman dlehman@esri.com Date: Mon Mar 28 12:00:35 2016 -0700
msvcr120: Add asinh.
Signed-off-by: Daniel Lehman dlehman@esri.com Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
configure | 2 ++ configure.ac | 2 ++ .../api-ms-win-crt-math-l1-1-0.spec | 6 ++-- dlls/msvcr120/msvcr120.spec | 6 ++-- dlls/msvcr120_app/msvcr120_app.spec | 6 ++-- dlls/msvcrt/math.c | 34 ++++++++++++++++++++++ dlls/ucrtbase/ucrtbase.spec | 6 ++-- include/config.h.in | 6 ++++ 8 files changed, 56 insertions(+), 12 deletions(-)
diff --git a/configure b/configure index c1abf1f..27afbc0 100755 --- a/configure +++ b/configure @@ -16858,6 +16858,8 @@ $as_echo "#define HAVE_ISNAN 1" >>confdefs.h fi
for ac_func in \ + asinh \ + asinhf \ cbrt \ cbrtf \ erf \ diff --git a/configure.ac b/configure.ac index c89aa08..20478df 100644 --- a/configure.ac +++ b/configure.ac @@ -2516,6 +2516,8 @@ then fi
AC_CHECK_FUNCS(\ + asinh \ + asinhf \ cbrt \ cbrtf \ erf \ diff --git a/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec b/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec index 1ea4f2d..fcfc8b4 100644 --- a/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec +++ b/dlls/api-ms-win-crt-math-l1-1-0/api-ms-win-crt-math-l1-1-0.spec @@ -129,9 +129,9 @@ @ stub acoshl @ cdecl asin(double) ucrtbase.asin @ cdecl -arch=arm,x86_64 asinf(float) ucrtbase.asinf -@ stub asinh -@ stub asinhf -@ stub asinhl +@ cdecl asinh(double double) ucrtbase.asinh +@ cdecl asinhf(float float) ucrtbase.asinhf +@ cdecl asinhl(double double) ucrtbase.asinhl @ cdecl atan(double) ucrtbase.atan @ cdecl atan2(double double) ucrtbase.atan2 @ cdecl -arch=arm,x86_64 atan2f(float float) ucrtbase.atan2f diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index dee7fd5..dc0c266 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -2018,9 +2018,9 @@ @ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s @ cdecl asin(double) MSVCRT_asin @ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf -@ stub asinh -@ stub asinhf -@ stub asinhl +@ cdecl asinh(double double) MSVCR120_asinh +@ cdecl asinhf(float float) MSVCR120_asinhf +@ cdecl asinhl(double double) MSVCR120_asinhl @ cdecl atan(double) MSVCRT_atan @ cdecl -arch=arm,x86_64 atanf(float) MSVCRT_atanf @ cdecl atan2(double double) MSVCRT_atan2 diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index f5dba67..c7810cd 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1684,9 +1684,9 @@ @ cdecl asctime_s(ptr long ptr) msvcr120.asctime_s @ cdecl asin(double) msvcr120.asin @ cdecl -arch=arm,x86_64 asinf(float) msvcr120.asinf -@ stub asinh -@ stub asinhf -@ stub asinhl +@ cdecl asinh(double double) msvcr120.asinh +@ cdecl asinhf(float float) msvcr120.asinhf +@ cdecl asinhl(double double) msvcr120.asinhl @ cdecl atan(double) msvcr120.atan @ cdecl -arch=arm,x86_64 atanf(float) msvcr120.atanf @ cdecl atan2(double double) msvcr120.atan2 diff --git a/dlls/msvcrt/math.c b/dlls/msvcrt/math.c index 0a3f2da..4150cfc 100644 --- a/dlls/msvcrt/math.c +++ b/dlls/msvcrt/math.c @@ -2743,3 +2743,37 @@ double CDECL MSVCR120_fmin(double x, double y) return signbit(x) ? x : y; return x<y ? x : y; } + +/********************************************************************* + * asinh (MSVCR120.@) + */ +double CDECL MSVCR120_asinh(double x) +{ +#ifdef HAVE_ASINH + return asinh(x); +#else + FIXME( "not implemented\n" ); + return 0.0; +#endif +} + +/********************************************************************* + * asinhf (MSVCR120.@) + */ +float CDECL MSVCR120_asinhf(float x) +{ +#ifdef HAVE_ASINHF + return asinhf(x); +#else + FIXME( "not implemented\n" ); + return 0.0f; +#endif +} + +/********************************************************************* + * asinhl (MSVCR120.@) + */ +LDOUBLE CDECL MSVCR120_asinhl(LDOUBLE x) +{ + return MSVCR120_asinh(x); +} diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec index 3bbab33..16bc133 100644 --- a/dlls/ucrtbase/ucrtbase.spec +++ b/dlls/ucrtbase/ucrtbase.spec @@ -2160,9 +2160,9 @@ @ cdecl asctime_s(ptr long ptr) MSVCRT_asctime_s @ cdecl asin(double) MSVCRT_asin @ cdecl -arch=arm,x86_64 asinf(float) MSVCRT_asinf -@ stub asinh -@ stub asinhf -@ stub asinhl +@ cdecl asinh(double double) MSVCR120_asinh +@ cdecl asinhf(float float) MSVCR120_asinhf +@ cdecl asinhl(double double) MSVCR120_asinhl @ cdecl atan(double) MSVCRT_atan @ cdecl atan2(double double) MSVCRT_atan2 @ cdecl -arch=arm,x86_64 atan2f(float float) MSVCRT_atan2f diff --git a/include/config.h.in b/include/config.h.in index 86da1a5..cb0ddd6 100644 --- a/include/config.h.in +++ b/include/config.h.in @@ -32,6 +32,12 @@ /* Define to 1 if you have the `asctime_r' function. */ #undef HAVE_ASCTIME_R
+/* Define to 1 if you have the `asinh' function. */ +#undef HAVE_ASINH + +/* Define to 1 if you have the `asinhf' function. */ +#undef HAVE_ASINHF + /* Define to 1 if you have the <asm/types.h> header file. */ #undef HAVE_ASM_TYPES_H