OSDN Git Service

Patch from Axel Barnitzke <barney@xkontor.com> to fix handling
authorEric Andersen <andersen@codepoet.org>
Wed, 17 Apr 2002 12:56:57 +0000 (12:56 -0000)
committerEric Andersen <andersen@codepoet.org>
Wed, 17 Apr 2002 12:56:57 +0000 (12:56 -0000)
of the isinf() macro, which was a casulty of my grafting the
glibc header onto out math library.

libm/fpmacros.c

index 6c5abbe..a9f63df 100644 (file)
@@ -165,6 +165,30 @@ long int __isfinite ( double x )
 }
 
 
+/***********************************************************************
+* long int __isinff(float x) returns -1 if value represents  negative
+*      infinity,  1  if value represents positive infinity,
+*      and 0 otherwise.
+*
+* Calls:  __signbit
+* +***********************************************************************/
+long int __isinff ( float x )
+{
+    long int class = __fpclassifyf(x);
+    if ( class == FP_INFINITE ) {
+       return ( (__signbitf(x)) ? -1 : 1);
+    }
+    return 0;
+}
+
+long int __isinf ( double x )
+{
+    long int class = __fpclassify(x);
+    if ( class == FP_INFINITE ) {
+       return ( (__signbit(x)) ? -1 : 1);
+    }
+    return 0;
+}
 
 /***********************************************************************
    long int __isnanf(float x) returns nonzero if and only if x is a