diff options
Diffstat (limited to 'libgcc')
-rw-r--r-- | libgcc/ChangeLog | 5 | ||||
-rw-r--r-- | libgcc/config/rs6000/ibm-ldouble.c | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 32705bf..fea1c05 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,8 @@ +2013-12-03 Adhemerval Zanella <azanella@linux.vnet.ibm.com> + + * config/rs6000/ibm-ldouble.c (__gcc_qadd): Fix add + of normal number and qNaN to not raise an inexact exception. + 2013-11-28 Uros Bizjak <ubizjak@gmail.com> * config/i386/32/sfp-machine.h (__FP_FRAC_ADDI_4): New macro. diff --git a/libgcc/config/rs6000/ibm-ldouble.c b/libgcc/config/rs6000/ibm-ldouble.c index 28e02e9..7ca900c 100644 --- a/libgcc/config/rs6000/ibm-ldouble.c +++ b/libgcc/config/rs6000/ibm-ldouble.c @@ -104,6 +104,8 @@ __gcc_qadd (double a, double aa, double c, double cc) if (nonfinite (z)) { + if (fabs (z) != inf()) + return z; z = cc + aa + c + a; if (nonfinite (z)) return z; |