OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [newlib-1.18.0/] [newlib-1.18.0-or32-1.0rc1/] [newlib/] [libm/] [common/] [s_fmax.c] - Diff between revs 207 and 345

Only display areas with differences | Details | Blame | View Log

Rev 207 Rev 345
/* Copyright (C) 2002 by  Red Hat, Incorporated. All rights reserved.
/* Copyright (C) 2002 by  Red Hat, Incorporated. All rights reserved.
 *
 *
 * Permission to use, copy, modify, and distribute this software
 * Permission to use, copy, modify, and distribute this software
 * is freely granted, provided that this notice is preserved.
 * is freely granted, provided that this notice is preserved.
 */
 */
/*
/*
FUNCTION
FUNCTION
<<fmax>>, <<fmaxf>>--maximum
<<fmax>>, <<fmaxf>>--maximum
INDEX
INDEX
        fmax
        fmax
INDEX
INDEX
        fmaxf
        fmaxf
 
 
ANSI_SYNOPSIS
ANSI_SYNOPSIS
        #include <math.h>
        #include <math.h>
        double fmax(double <[x]>, double <[y]>);
        double fmax(double <[x]>, double <[y]>);
        float fmaxf(float <[x]>, float <[y]>);
        float fmaxf(float <[x]>, float <[y]>);
 
 
DESCRIPTION
DESCRIPTION
The <<fmax>> functions determine the maximum numeric value of their arguments.
The <<fmax>> functions determine the maximum numeric value of their arguments.
NaN arguments are treated as missing data:  if one argument is a NaN and the
NaN arguments are treated as missing data:  if one argument is a NaN and the
other numeric, then the <<fmax>> functions choose the numeric value.
other numeric, then the <<fmax>> functions choose the numeric value.
 
 
RETURNS
RETURNS
The <<fmax>> functions return the maximum numeric value of their arguments.
The <<fmax>> functions return the maximum numeric value of their arguments.
 
 
PORTABILITY
PORTABILITY
ANSI C, POSIX.
ANSI C, POSIX.
 
 
*/
*/
 
 
#include "fdlibm.h"
#include "fdlibm.h"
 
 
#ifndef _DOUBLE_IS_32BITS
#ifndef _DOUBLE_IS_32BITS
 
 
#ifdef __STDC__
#ifdef __STDC__
        double fmax(double x, double y)
        double fmax(double x, double y)
#else
#else
        double fmax(x,y)
        double fmax(x,y)
        double x;
        double x;
        double y;
        double y;
#endif
#endif
{
{
  if (__fpclassifyd(x) == FP_NAN)
  if (__fpclassifyd(x) == FP_NAN)
    return y;
    return y;
  if (__fpclassifyd(y) == FP_NAN)
  if (__fpclassifyd(y) == FP_NAN)
    return x;
    return x;
 
 
  return x > y ? x : y;
  return x > y ? x : y;
}
}
 
 
#endif /* _DOUBLE_IS_32BITS */
#endif /* _DOUBLE_IS_32BITS */
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.