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 fmax(double double) MSVCR120_fmax
@ cdecl fmaxf(float float) MSVCR120_fmaxf @ cdecl fmaxf(float float) MSVCR120_fmaxf
@ cdecl fmaxl(double double) MSVCR120_fmax @ cdecl fmaxl(double double) MSVCR120_fmax
@ stub fmin @ cdecl fmin(double double) MSVCR120_fmin
@ stub fminf @ cdecl fminf(float float) MSVCR120_fminf
@ stub fminl @ cdecl fminl(double double) MSVCR120_fmin
@ cdecl fmod(double double) MSVCRT_fmod @ cdecl fmod(double double) MSVCRT_fmod
@ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf @ cdecl -arch=arm,x86_64 fmodf(float float) MSVCRT_fmodf
@ cdecl fopen(str str) MSVCRT_fopen @ cdecl fopen(str str) MSVCRT_fopen

View File

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

View File

@ -2683,3 +2683,31 @@ int CDECL MSVCR120__dsign(double x)
{ {
return signbit(x) ? 0x8000 : 0; 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;
}