diff options
Diffstat (limited to 'libm/s_trunc.c')
-rw-r--r-- | libm/s_trunc.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/libm/s_trunc.c b/libm/s_trunc.c index eb4f6a8f8..987ada95d 100644 --- a/libm/s_trunc.c +++ b/libm/s_trunc.c @@ -24,30 +24,30 @@ double trunc (double x) { - int32_t i0, j0; + int32_t i0, _j0; u_int32_t i1; int sx; EXTRACT_WORDS (i0, i1, x); sx = i0 & 0x80000000; - j0 = ((i0 >> 20) & 0x7ff) - 0x3ff; - if (j0 < 20) + _j0 = ((i0 >> 20) & 0x7ff) - 0x3ff; + if (_j0 < 20) { - if (j0 < 0) + if (_j0 < 0) /* The magnitude of the number is < 1 so the result is +-0. */ INSERT_WORDS (x, sx, 0); else - INSERT_WORDS (x, sx | (i0 & ~(0x000fffff >> j0)), 0); + INSERT_WORDS (x, sx | (i0 & ~(0x000fffff >> _j0)), 0); } - else if (j0 > 51) + else if (_j0 > 51) { - if (j0 == 0x400) + if (_j0 == 0x400) /* x is inf or NaN. */ return x + x; } else { - INSERT_WORDS (x, i0, i1 & ~(0xffffffffu >> (j0 - 20))); + INSERT_WORDS (x, i0, i1 & ~(0xffffffffu >> (_j0 - 20))); } return x; |