mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-30 22:43:12 +03:00
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.
This commit is contained in:
@ -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";
|
||||
|
Reference in New Issue
Block a user