diff options
-rw-r--r-- | libgcc/config/libbid/ChangeLog | 5 | ||||
-rw-r--r-- | libgcc/config/libbid/bid128_fma.c | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/libgcc/config/libbid/ChangeLog b/libgcc/config/libbid/ChangeLog index 9405a3a..9d07810 100644 --- a/libgcc/config/libbid/ChangeLog +++ b/libgcc/config/libbid/ChangeLog @@ -1,3 +1,8 @@ +2014-07-23 Marius Cornea <marius.cornea@intel.com> + + PR libgcc/61685 + * bid128_fma.c (rounding_correction): Remove redundant tests. + 2014-06-10 Uros Bizjak <ubizjak@gmail.com> * bid128_div.c (BID128_FUNCTION_ARG2): Remove unused variable 'Ql'. diff --git a/libgcc/config/libbid/bid128_fma.c b/libgcc/config/libbid/bid128_fma.c index 5f9879f..7ddd53b 100644 --- a/libgcc/config/libbid/bid128_fma.c +++ b/libgcc/config/libbid/bid128_fma.c @@ -93,10 +93,8 @@ rounding_correction (unsigned int rnd_mode, // exp = exp - EXP_P1; unbexp = unbexp - 1; exp = (UINT64) (unbexp + 6176) << 49; - } else { // if exp = 0 - if (is_midpoint_lt_even || is_midpoint_lt_even || - is_inexact_gt_midpoint || is_inexact_gt_midpoint) // tiny & inexact - *ptrfpsf |= UNDERFLOW_EXCEPTION; + } else { // if exp = 0 the result is tiny & inexact + *ptrfpsf |= UNDERFLOW_EXCEPTION; } } } else { |