4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-17 03:49:46 +08:00
Jeff Johnston b7f5fb36f1 2014-03-21 Maciej W. Rozycki <macro@codesourcery.com>
* libc/stdlib/gd_qnan.h (f_QNAN, d_QNAN0, d_QNAN1): Add MIPS
        versions.
        (ld_QNAN0, ld_QNAN1, ld_QNAN2, ld_QNAN3): Don't define for MIPS.
        (ldus_QNAN0, ldus_QNAN1, ldus_QNAN2, ldus_QNAN3, ldus_QNAN4):
        Likewise.
        * libc/stdlib/ldtoa.c (nan113, nan64, nan53, nan24): Add MIPS
        versions.
        (enan): Handle legacy MIPS payloads.
        * libm/common/s_nan.c (nan): Use __builtin_nan if supported by
        the compiler.
        * libm/common/sf_nan.c (nanf): Likewise.
2014-03-21 21:27:29 +00:00

53 lines
733 B
C

/*
* nan () returns a nan.
* Added by Cygnus Support.
*/
/*
FUNCTION
<<nan>>, <<nanf>>---representation of ``Not a Number''
INDEX
nan
INDEX
nanf
ANSI_SYNOPSIS
#include <math.h>
double nan(const char *);
float nanf(const char *);
TRAD_SYNOPSIS
#include <math.h>
double nan();
float nanf();
DESCRIPTION
<<nan>> and <<nanf>> return an IEEE NaN (Not a Number) in
double- and single-precision arithmetic respectively. The
argument is currently disregarded.
QUICKREF
nan - pure
*/
#include "fdlibm.h"
#ifndef _DOUBLE_IS_32BITS
double nan(const char *unused)
{
double x;
#if __GNUC_PREREQ (3, 3)
x = __builtin_nan("");
#else
INSERT_WORDS(x,0x7ff80000,0);
#endif
return x;
}
#endif /* _DOUBLE_IS_32BITS */