diff options
author | Wilco Dijkstra <wdijkstr@arm.com> | 2015-09-18 21:19:48 +0100 |
---|---|---|
committer | Wilco Dijkstra <wdijkstr@arm.com> | 2015-09-18 21:19:48 +0100 |
commit | 89faa0340ad399ead8104f8fb6b7fed81f7d939c (patch) | |
tree | cc15f087d86807d128a1fa592d00890e6c0e5982 /math | |
parent | 3cc652e951c71785032019fec82e3b8543d85305 (diff) | |
download | glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.zip glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.tar.gz glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.tar.bz2 |
Cleanup a few cases where isinf is used to get the signbit to improve the readability and maintainability and allow inlining.
2015-09-18 Wilco Dijkstra <wdijkstr@arm.com>
* math/w_tgamma.c (__ieee754_gamma_r): Use explicit sign check.
* math/w_tgammaf.c (__ieee754_gammaf_r): Likewise.
* math/w_tgammal.c (__ieee754_gammal_r): Likewise.
* stdio-common/printf_fp.c (___printf_fp):
Use signbit to get the sign. Use isinf macro to allow inlining.
* stdio-common/printf_fphex.c (__printf_fphex): Likewise.
* stdio-common/printf_size.c (__printf_size): Likewise.
Diffstat (limited to 'math')
-rw-r--r-- | math/w_tgamma.c | 2 | ||||
-rw-r--r-- | math/w_tgammaf.c | 2 | ||||
-rw-r--r-- | math/w_tgammal.c | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/math/w_tgamma.c b/math/w_tgamma.c index 1ca7765..99b6029 100644 --- a/math/w_tgamma.c +++ b/math/w_tgamma.c @@ -26,7 +26,7 @@ __tgamma(double x) double y = __ieee754_gamma_r(x,&local_signgam); if(__glibc_unlikely (!isfinite (y) || y == 0) - && (isfinite (x) || isinf (x) < 0) + && (isfinite (x) || (isinf (x) && x < 0.0)) && _LIB_VERSION != _IEEE_) { if (x == 0.0) return __kernel_standard(x,x,50); /* tgamma pole */ diff --git a/math/w_tgammaf.c b/math/w_tgammaf.c index 9ed7660..dfce894 100644 --- a/math/w_tgammaf.c +++ b/math/w_tgammaf.c @@ -24,7 +24,7 @@ __tgammaf(float x) float y = __ieee754_gammaf_r(x,&local_signgam); if(__glibc_unlikely (!isfinite (y) || y == 0) - && (isfinite (x) || isinf (x) < 0) + && (isfinite (x) || (isinf (x) && x < 0.0)) && _LIB_VERSION != _IEEE_) { if (x == (float)0.0) /* tgammaf pole */ diff --git a/math/w_tgammal.c b/math/w_tgammal.c index b3a9e4a..50de8cf 100644 --- a/math/w_tgammal.c +++ b/math/w_tgammal.c @@ -29,7 +29,7 @@ __tgammal(long double x) long double y = __ieee754_gammal_r(x,&local_signgam); if(__glibc_unlikely (!isfinite (y) || y == 0) - && (isfinite (x) || isinf (x) < 0) + && (isfinite (x) || (isinf (x) && x < 0.0)) && _LIB_VERSION != _IEEE_) { if(x==0.0) return __kernel_standard_l(x,x,250); /* tgamma pole */ |