msvcr120: Add fmin implementation.

This commit is contained in:
Piotr Caban 2015-09-12 14:29:00 +02:00 committed by Alexandre Julliard
parent e4823f9b27
commit 09a727c33c
3 changed files with 34 additions and 6 deletions

View File

@ -2167,9 +2167,9 @@
@ cdecl fmax(double double) MSVCR120_fmax
@ cdecl fmaxf(float float) MSVCR120_fmaxf
@ cdecl fmaxl(double double) MSVCR120_fmax
@ stub fmin
@ stub fminf
@ stub fminl
@ cdecl fmin(double double) MSVCR120_fmin
@ cdecl fminf(float float) MSVCR120_fminf
@ cdecl fminl(double double) MSVCR120_fmin
@ cdecl fmod(double double) MSVCRT_fmod
@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen

View File

@ -1836,9 +1836,9 @@
@ cdecl fmax(double double) msvcr120.fmax
@ cdecl fmaxf(float float) msvcr120.fmaxf
@ cdecl fmaxl(double double) msvcr120.fmaxl
@ stub fmin
@ stub fminf
@ stub fminl
@ cdecl fmin(double double) msvcr120.fmin
@ cdecl fminf(float float) msvcr120.fminf
@ cdecl fminl(double double) msvcr120.fminl
@ cdecl fmod(double double) msvcr120.fmod
@ cdecl -arch=arm,x86_64 fmodf(float float) msvcr120.fmodf
@ cdecl fopen(str str) msvcr120.fopen

View File

@ -2683,3 +2683,31 @@ int CDECL MSVCR120__dsign(double x)
{
return signbit(x) ? 0x8000 : 0;
}
/*********************************************************************
* fminf (MSVCR120.@)
*/
float CDECL MSVCR120_fminf(float x, float y)
{
if(isnanf(x))
return y;
if(isnanf(y))
return x;
if(x==0 && y==0)
return signbit(x) ? x : y;
return x<y ? x : y;
}
/*********************************************************************
* fmin (MSVCR120.@)
*/
double CDECL MSVCR120_fmin(double x, double y)
{
if(isnan(x))
return y;
if(isnan(y))
return x;
if(x==0 && y==0)
return signbit(x) ? x : y;
return x<y ? x : y;
}