about summary refs log tree commit diff
path: root/src/math
diff options
context:
space:
mode:
authorSzabolcs Nagy <nsz@port70.net>2012-11-13 00:21:09 +0100
committerSzabolcs Nagy <nsz@port70.net>2012-11-13 00:21:09 +0100
commit04ccbdca6d88738e23e0d6a622ad33854c468646 (patch)
tree0d50d479ce8b9be88a1e5197accfb7c8b0fba8e1 /src/math
parentbe81f51030d90de8d5eb0b65dbdab3032d5cae23 (diff)
downloadmusl-04ccbdca6d88738e23e0d6a622ad33854c468646.tar.gz
musl-04ccbdca6d88738e23e0d6a622ad33854c468646.tar.xz
musl-04ccbdca6d88738e23e0d6a622ad33854c468646.zip
math: raise exception flags in log1pl.c on <= -1 arguments
Diffstat (limited to 'src/math')
-rw-r--r--src/math/log1pl.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/math/log1pl.c b/src/math/log1pl.c
index 1400d365..edb48df1 100644
--- a/src/math/log1pl.c
+++ b/src/math/log1pl.c
@@ -46,11 +46,6 @@
  *                      Relative error:
  * arithmetic   domain     # trials      peak         rms
  *    IEEE     -1.0, 9.0    100000      8.2e-20    2.5e-20
- *
- * ERROR MESSAGES:
- *
- * log singularity:  x-1 = 0; returns -INFINITY
- * log domain:       x-1 < 0; returns NAN
  */
 
 #include "libm.h"
@@ -123,8 +118,8 @@ long double log1pl(long double xm1)
 	/* Test for domain errors.  */
 	if (x <= 0.0) {
 		if (x == 0.0)
-			return -INFINITY;
-		return NAN;
+			return -1/x; /* -inf with divbyzero */
+		return 0/0.0f; /* nan with invalid */
 	}
 
 	/* Separate mantissa from exponent.