projects
/
musl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
04ccbdc
)
math: raise flags in log2l.c on <= 0 arguments, and fix volatile
author
Szabolcs Nagy
<nsz@port70.net>
Mon, 12 Nov 2012 23:30:06 +0000
(
00:30
+0100)
committer
Szabolcs Nagy
<nsz@port70.net>
Mon, 12 Nov 2012 23:30:06 +0000
(
00:30
+0100)
src/math/log2l.c
patch
|
blob
|
history
diff --git
a/src/math/log2l.c
b/src/math/log2l.c
index
8ebce9c
..
76a7aac
100644
(file)
--- a/
src/math/log2l.c
+++ b/
src/math/log2l.c
@@
-50,11
+50,6
@@
* In the tests over the interval exp(+-10000), the logarithms
* of the random arguments were uniformly distributed over
* [-10000, +10000].
* In the tests over the interval exp(+-10000), the logarithms
* of the random arguments were uniformly distributed over
* [-10000, +10000].
- *
- * ERROR MESSAGES:
- *
- * log singularity: x = 0; returns -INFINITY
- * log domain: x < 0; returns NAN
*/
#include "libm.h"
*/
#include "libm.h"
@@
-113,7
+108,7
@@
static const long double S[4] = {
long double log2l(long double x)
{
long double log2l(long double x)
{
-
volatile
long double z;
+ long double z;
long double y;
int e;
long double y;
int e;
@@
-123,8
+118,8
@@
long double log2l(long double x)
return x;
if (x <= 0.0) {
if (x == 0.0)
return x;
if (x <= 0.0) {
if (x == 0.0)
- return -
INFINITY;
- return
NAN;
+ return -
1/(x+0); /* -inf with divbyzero */
+ return
0/0.0f; /* nan with invalid */
}
/* separate mantissa from exponent */
}
/* separate mantissa from exponent */