summaryrefslogtreecommitdiff
path: root/numpy
diff options
context:
space:
mode:
authorCharles Harris <charlesr.harris@gmail.com>2010-04-05 04:03:25 +0000
committerCharles Harris <charlesr.harris@gmail.com>2010-04-05 04:03:25 +0000
commit6cc6cc62c53190e6deb980a4327f846b26dd156e (patch)
treeb5bc4743b8c9cfdae8988efbe87f1a28be998fd5 /numpy
parent96985ac396cd904d4f2fed3c2f37417c249f2774 (diff)
downloadnumpy-6cc6cc62c53190e6deb980a4327f846b26dd156e.tar.gz
ENH: Try to make log1p a bit more resistant to compiler shenanigans.
STY: Couple of style fixups.
Diffstat (limited to 'numpy')
-rw-r--r--numpy/core/src/npymath/npy_math.c.src15
1 files changed, 9 insertions, 6 deletions
diff --git a/numpy/core/src/npymath/npy_math.c.src b/numpy/core/src/npymath/npy_math.c.src
index 2841c9f41..04a09bcba 100644
--- a/numpy/core/src/npymath/npy_math.c.src
+++ b/numpy/core/src/npymath/npy_math.c.src
@@ -65,13 +65,14 @@
#ifndef HAVE_EXPM1
double npy_expm1(double x)
{
- double u = npy_exp(x);
+ const double u = npy_exp(x);
+
if (u == 1.0) {
return x;
- } else if (u-1.0 == -1.0) {
+ } else if (u - 1.0 == -1.0) {
return -1;
} else {
- return (u-1.0) * x/npy_log(u);
+ return (u - 1.0) * x/npy_log(u);
}
}
#endif
@@ -79,11 +80,13 @@ double npy_expm1(double x)
#ifndef HAVE_LOG1P
double npy_log1p(double x)
{
- double u = 1. + x;
- if (u == 1.0) {
+ const double u = 1. + x;
+ const double d = u - 1.;
+
+ if (d == 0) {
return x;
} else {
- return npy_log(u) * x / (u - 1);
+ return npy_log(u) * x / d;
}
}
#endif