summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--newlib/ChangeLog5
-rw-r--r--newlib/libm/math/w_tgamma.c4
-rw-r--r--newlib/libm/math/wf_tgamma.c14
3 files changed, 23 insertions, 0 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog
index 8ace534c4..c304e5f3b 100644
--- a/newlib/ChangeLog
+++ b/newlib/ChangeLog
@@ -1,3 +1,8 @@
+2011-01-12 Ralf Corsépius <ralf.corsepius@rtems.org>
+
+ * libm/math/w_tgamma.c: Only build ifndef _DOUBLE_IS_32BITS.
+ * libm/math/wf_tgamma.c: Map tgamma to tgammaf, ifdef _DOUBLE_IS_32BITS.
+
2011-01-12 Jeff Johnston <jjohnstn@redhat.com>
* configure.host: Add noinclude variable to allow specification
diff --git a/newlib/libm/math/w_tgamma.c b/newlib/libm/math/w_tgamma.c
index f24a243bf..c0c011dd0 100644
--- a/newlib/libm/math/w_tgamma.c
+++ b/newlib/libm/math/w_tgamma.c
@@ -17,6 +17,8 @@
#include "fdlibm.h"
+#ifndef _DOUBLE_IS_32BITS
+
#ifdef __STDC__
double tgamma(double x)
#else
@@ -42,3 +44,5 @@
return y;
#endif
}
+
+#endif /* defined(_DOUBLE_IS_32BITS) */
diff --git a/newlib/libm/math/wf_tgamma.c b/newlib/libm/math/wf_tgamma.c
index 2b57d845f..92df39648 100644
--- a/newlib/libm/math/wf_tgamma.c
+++ b/newlib/libm/math/wf_tgamma.c
@@ -43,3 +43,17 @@
return y;
#endif
}
+
+#ifdef _DOUBLE_IS_32BITS
+
+#ifdef __STDC__
+ double tgamma(double x)
+#else
+ double tgamma(x)
+ double x;
+#endif
+{
+ return (double) tgammaf((float) x);
+}
+
+#endif /* defined(_DOUBLE_IS_32BITS) */