diff options
author | Jim Wilson <jimw@sifive.com> | 2017-12-12 22:38:01 +0300 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2017-12-13 13:03:10 +0300 |
commit | c338bc22554fcddf64f12148785d07c1a4021160 (patch) | |
tree | 5d0c6d443a04cd7439095fcf9fc819d1265baa32 | |
parent | efce18d7541edd709dc10315e54c1842e14fbf63 (diff) |
Don't call double rint from float powf.
Updated patch to use 0.0f in addition to calling rintf.
Tested same way as before, with a testcase that triggers the code and
make check.
OK?
newlib/
* libm/math/wf_pow.c (powf): Call rintf instead of rint. Use 0.0f
for compare.
-rw-r--r-- | newlib/libm/math/wf_pow.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/newlib/libm/math/wf_pow.c b/newlib/libm/math/wf_pow.c index be453558b..9a10254bf 100644 --- a/newlib/libm/math/wf_pow.c +++ b/newlib/libm/math/wf_pow.c @@ -127,11 +127,11 @@ if (_LIB_VERSION == _SVID_) { exc.retval = HUGE; y *= 0.5; - if(x<0.0&&rint(y)!=y) exc.retval = -HUGE; + if(x<0.0f&&rintf(y)!=y) exc.retval = -HUGE; } else { exc.retval = HUGE_VAL; y *= 0.5; - if(x<0.0&&rint(y)!=y) exc.retval = -HUGE_VAL; + if(x<0.0f&&rintf(y)!=y) exc.retval = -HUGE_VAL; } if (_LIB_VERSION == _POSIX_) errno = ERANGE; |