msvcr120: Add erfc.

Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alex Henrie 2017-07-13 23:14:19 -06:00 committed by Alexandre Julliard
parent 756fdd029c
commit 26163f5cdf
8 changed files with 54 additions and 12 deletions

2
configure vendored
View File

@ -17416,6 +17416,8 @@ for ac_func in \
cbrt \
cbrtf \
erf \
erfc \
erfcf \
erff \
exp2 \
exp2f \

View File

@ -2603,6 +2603,8 @@ AC_CHECK_FUNCS(\
cbrt \
cbrtf \
erf \
erfc \
erfcf \
erff \
exp2 \
exp2f \

View File

@ -221,9 +221,9 @@
@ stub ctanhl
@ stub ctanl
@ cdecl erf(double) ucrtbase.erf
@ stub erfc
@ stub erfcf
@ stub erfcl
@ cdecl erfc(double) ucrtbase.erfc
@ cdecl erfcf(float) ucrtbase.erfcf
@ cdecl erfcl(double) ucrtbase.erfcl
@ cdecl erff(float) ucrtbase.erff
@ cdecl erfl(double) ucrtbase.erfl
@ cdecl exp(double) ucrtbase.exp

View File

@ -2123,9 +2123,9 @@
@ stub ctanl
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl erf(double) MSVCR120_erf
@ stub erfc
@ stub erfcf
@ stub erfcl
@ cdecl erfc(double) MSVCR120_erfc
@ cdecl erfcf(float) MSVCR120_erfcf
@ cdecl erfcl(double) MSVCR120_erfcl
@ cdecl erff(float) MSVCR120_erff
@ cdecl erfl(double) MSVCR120_erfl
@ cdecl exit(long) MSVCRT_exit

View File

@ -1789,9 +1789,9 @@
@ stub ctanl
@ cdecl -ret64 div(long long) msvcr120.div
@ cdecl erf(double) msvcr120.erf
@ stub erfc
@ stub erfcf
@ stub erfcl
@ cdecl erfc(double) msvcr120.erfc
@ cdecl erfcf(float) msvcr120.erfcf
@ cdecl erfcl(double) msvcr120.erfcl
@ cdecl erff(float) msvcr120.erff
@ cdecl erfl(double) msvcr120.erfl
@ cdecl exit(long) msvcr120.exit

View File

@ -2772,6 +2772,38 @@ LDOUBLE CDECL MSVCR120_erfl(LDOUBLE x)
return MSVCR120_erf(x);
}
/*********************************************************************
* erfc (MSVCR120.@)
*/
double CDECL MSVCR120_erfc(double x)
{
#ifdef HAVE_ERFC
return erfc(x);
#else
return 1 - MSVCR120_erf(x);
#endif
}
/*********************************************************************
* erfcf (MSVCR120.@)
*/
float CDECL MSVCR120_erfcf(float x)
{
#ifdef HAVE_ERFCF
return erfcf(x);
#else
return MSVCR120_erfc(x);
#endif
}
/*********************************************************************
* erfcl (MSVCR120.@)
*/
LDOUBLE CDECL MSVCR120_erfcl(LDOUBLE x)
{
return MSVCR120_erfc(x);
}
/*********************************************************************
* fmaxf (MSVCR120.@)
*/

View File

@ -2266,9 +2266,9 @@
@ stub ctanl
@ cdecl -ret64 div(long long) MSVCRT_div
@ cdecl erf(double) MSVCR120_erf
@ stub erfc
@ stub erfcf
@ stub erfcl
@ cdecl erfc(double) MSVCR120_erfc
@ cdecl erfcf(float) MSVCR120_erfcf
@ cdecl erfcl(double) MSVCR120_erfcl
@ cdecl erff(float) MSVCR120_erff
@ cdecl erfl(double) MSVCR120_erfl
@ cdecl exit(long) MSVCRT_exit

View File

@ -141,6 +141,12 @@
/* Define to 1 if you have the `erf' function. */
#undef HAVE_ERF
/* Define to 1 if you have the `erfc' function. */
#undef HAVE_ERFC
/* Define to 1 if you have the `erfcf' function. */
#undef HAVE_ERFCF
/* Define to 1 if you have the `erff' function. */
#undef HAVE_ERFF