diff options
author | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-21 18:13:04 +0000 |
---|---|---|
committer | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-01-21 18:13:04 +0000 |
commit | b281607a60ce2e276dc877cc9777fe01a281740e (patch) | |
tree | 9a768a868c7298073b52441cc1770bc25e3f21eb | |
parent | 6e0941b00b0c00980d7d1573b6dbd2d2f74d83ce (diff) | |
download | gcc-b281607a60ce2e276dc877cc9777fe01a281740e.tar.gz |
PR libfortran/34699
Backport:
2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR libfortran/26253
* intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_1-branch@131699 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | libgfortran/ChangeLog | 9 | ||||
-rw-r--r-- | libgfortran/intrinsics/c99_functions.c | 4 |
2 files changed, 13 insertions, 0 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index a71d215b8ce..b60bfe33484 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,12 @@ +2008-01-21 John David Anglin <dave.anglin@nrc-cnrc.gc.ca> + + PR libfortran/34699 + Backport: + 2007-09-21 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + + PR libfortran/26253 + * intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate. + 2007-05-23 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libfortran/31964 diff --git a/libgfortran/intrinsics/c99_functions.c b/libgfortran/intrinsics/c99_functions.c index 3eabd0dc5a7..40e0ba76346 100644 --- a/libgfortran/intrinsics/c99_functions.c +++ b/libgfortran/intrinsics/c99_functions.c @@ -226,7 +226,11 @@ log10f(float x) double scalbn(double x, int y) { +#if (FLT_RADIX == 2) && defined(HAVE_LDEXP) + return ldexp (x, y); +#else return x * pow(FLT_RADIX, y); +#endif } #endif |