diff options
Diffstat (limited to 'newlib/libm/common/sf_round.c')
-rw-r--r-- | newlib/libm/common/sf_round.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/newlib/libm/common/sf_round.c b/newlib/libm/common/sf_round.c index c8f1d77..1bf6089 100644 --- a/newlib/libm/common/sf_round.c +++ b/newlib/libm/common/sf_round.c @@ -18,12 +18,16 @@ float x; #endif { + int signbit; __uint32_t w; /* Most significant word, least significant word. */ int exponent_less_127; GET_FLOAT_WORD(w, x); + /* Extract sign bit. */ + signbit = w & 0x80000000; + /* Extract exponent field. */ exponent_less_127 = (int)((w & 0x7f800000) >> 23) - 127; |