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 /stdio-common/printf_fp.c | |
parent | 3cc652e951c71785032019fec82e3b8543d85305 (diff) | |
download | glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.tar.gz glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.tar.xz glibc-89faa0340ad399ead8104f8fb6b7fed81f7d939c.zip |
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 'stdio-common/printf_fp.c')
-rw-r--r-- | stdio-common/printf_fp.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/stdio-common/printf_fp.c b/stdio-common/printf_fp.c index 3023b20183..11f3145b3a 100644 --- a/stdio-common/printf_fp.c +++ b/stdio-common/printf_fp.c @@ -332,7 +332,6 @@ ___printf_fp (FILE *fp, fpnum.ldbl = *(const long double *) args[0]; /* Check for special values: not a number or infinity. */ - int res; if (isnan (fpnum.ldbl)) { is_neg = signbit (fpnum.ldbl); @@ -347,9 +346,9 @@ ___printf_fp (FILE *fp, wspecial = L"nan"; } } - else if ((res = __isinfl (fpnum.ldbl))) + else if (isinf (fpnum.ldbl)) { - is_neg = res < 0; + is_neg = signbit (fpnum.ldbl); if (isupper (info->spec)) { special = "INF"; @@ -377,11 +376,9 @@ ___printf_fp (FILE *fp, fpnum.dbl = *(const double *) args[0]; /* Check for special values: not a number or infinity. */ - int res; if (isnan (fpnum.dbl)) { - union ieee754_double u = { .d = fpnum.dbl }; - is_neg = u.ieee.negative != 0; + is_neg = signbit (fpnum.dbl); if (isupper (info->spec)) { special = "NAN"; @@ -393,9 +390,9 @@ ___printf_fp (FILE *fp, wspecial = L"nan"; } } - else if ((res = __isinf (fpnum.dbl))) + else if (isinf (fpnum.dbl)) { - is_neg = res < 0; + is_neg = signbit (fpnum.dbl); if (isupper (info->spec)) { special = "INF"; |