From 47594329a9c03fb945f41c19f06401271f9aa9c5 Mon Sep 17 00:00:00 2001 From: Marcus Shawcroft Date: Tue, 13 Nov 2012 17:01:05 +0000 Subject: Fix missing truncation UNDERFLOW. --- soft-fp/soft-fp.h | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) (limited to 'soft-fp/soft-fp.h') diff --git a/soft-fp/soft-fp.h b/soft-fp/soft-fp.h index 750c7fea2d..49a87706cc 100644 --- a/soft-fp/soft-fp.h +++ b/soft-fp/soft-fp.h @@ -158,22 +158,24 @@ do { \ #define _FP_ROUND(wc, X) \ do { \ if (_FP_FRAC_LOW_##wc(X) & 7) \ - FP_SET_EXCEPTION(FP_EX_INEXACT); \ - switch (FP_ROUNDMODE) \ - { \ - case FP_RND_NEAREST: \ - _FP_ROUND_NEAREST(wc,X); \ - break; \ - case FP_RND_ZERO: \ - _FP_ROUND_ZERO(wc,X); \ - break; \ - case FP_RND_PINF: \ - _FP_ROUND_PINF(wc,X); \ - break; \ - case FP_RND_MINF: \ - _FP_ROUND_MINF(wc,X); \ - break; \ - } \ + { \ + FP_SET_EXCEPTION(FP_EX_INEXACT); \ + switch (FP_ROUNDMODE) \ + { \ + case FP_RND_NEAREST: \ + _FP_ROUND_NEAREST(wc,X); \ + break; \ + case FP_RND_ZERO: \ + _FP_ROUND_ZERO(wc,X); \ + break; \ + case FP_RND_PINF: \ + _FP_ROUND_PINF(wc,X); \ + break; \ + case FP_RND_MINF: \ + _FP_ROUND_MINF(wc,X); \ + break; \ + } \ + } \ } while (0) #define FP_CLS_NORMAL 0 -- cgit v1.2.3