aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/ieee754/flt-32/e_exp2f.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@gmail.com>2011-10-18 15:11:31 -0400
committerUlrich Drepper <drepper@gmail.com>2011-10-18 15:11:31 -0400
commitd9a8d0abcc976f7ffe319a376ddd3497486e9726 (patch)
tree8bf41c5c082f4154657e72955711a73dff64dbea /sysdeps/ieee754/flt-32/e_exp2f.c
parent4855e3ddf5061dd8ddcefafc7185f6f70937434b (diff)
downloadglibc-d9a8d0abcc976f7ffe319a376ddd3497486e9726.zip
glibc-d9a8d0abcc976f7ffe319a376ddd3497486e9726.tar.gz
glibc-d9a8d0abcc976f7ffe319a376ddd3497486e9726.tar.bz2
Use new internal libc_fe* interfaces in more functions
Diffstat (limited to 'sysdeps/ieee754/flt-32/e_exp2f.c')
-rw-r--r--sysdeps/ieee754/flt-32/e_exp2f.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/sysdeps/ieee754/flt-32/e_exp2f.c b/sysdeps/ieee754/flt-32/e_exp2f.c
index 0703cea..f07500d 100644
--- a/sysdeps/ieee754/flt-32/e_exp2f.c
+++ b/sysdeps/ieee754/flt-32/e_exp2f.c
@@ -57,11 +57,7 @@ __ieee754_exp2f (float x)
union ieee754_float ex2_u, scale_u;
fenv_t oldenv;
- feholdexcept (&oldenv);
-#ifdef FE_TONEAREST
- /* If we don't have this, it's too bad. */
- fesetround (FE_TONEAREST);
-#endif
+ libc_feholdexcept_setroundf (&oldenv, FE_TONEAREST);
/* 1. Argument reduction.
Choose integers ex, -128 <= t < 128, and some real
@@ -104,7 +100,7 @@ __ieee754_exp2f (float x)
x22 = (.24022656679f * x + .69314736128f) * ex2_u.f;
/* 5. Return (2^x2-1) * 2^(t/512+e+ex) + 2^(t/512+e+ex). */
- fesetenv (&oldenv);
+ libc_fesetenv (&oldenv);
result = x22 * x + ex2_u.f;
@@ -116,7 +112,7 @@ __ieee754_exp2f (float x)
/* Exceptional cases: */
else if (isless (x, himark))
{
- if (__isinff (x))
+ if (__isinf_nsf (x))
/* e^-inf == 0, with no error. */
return 0;
else