parisc: Fix compiler warnings in float emulation code
authorHelge Deller <deller@gmx.de>
Fri, 24 May 2019 21:16:25 +0000 (23:16 +0200)
committerHelge Deller <deller@gmx.de>
Fri, 24 May 2019 22:11:04 +0000 (00:11 +0200)
Avoid such compiler warnings:
arch/parisc/math-emu/cnv_float.h:71:27: warning: ‘<<’ in boolean context, did you mean ‘<’ ? [-Wint-in-bool-context]
     ((Dintp1(dint_valueA) << 33 - SGL_EXP_LENGTH) || Dintp2(dint_valueB))
arch/parisc/math-emu/fcnvxf.c:257:6: note: in expansion of macro ‘Dint_isinexact_to_sgl’
  if (Dint_isinexact_to_sgl(srcp1,srcp2)) {

Signed-off-by: Helge Deller <deller@gmx.de>
arch/parisc/math-emu/cnv_float.h

index 933423fa5144aca0b32a8110d88ff20abc98b90e..b0db61188a612873c84ba25b27de0c3f28168e69 100644 (file)
     ((exponent < (SGL_P - 1)) ?                                \
      (Sall(sgl_value) << (SGL_EXP_LENGTH + 1 + exponent)) : FALSE)
 
-#define Int_isinexact_to_sgl(int_value)        (int_value << 33 - SGL_EXP_LENGTH)
+#define Int_isinexact_to_sgl(int_value)        ((int_value << 33 - SGL_EXP_LENGTH) != 0)
 
 #define Sgl_roundnearest_from_int(int_value,sgl_value)                 \
     if (int_value & 1<<(SGL_EXP_LENGTH - 2))   /* round bit */         \
-       if ((int_value << 34 - SGL_EXP_LENGTH) || Slow(sgl_value))      \
+       if (((int_value << 34 - SGL_EXP_LENGTH) != 0) || Slow(sgl_value)) \
                Sall(sgl_value)++
 
 #define Dint_isinexact_to_sgl(dint_valueA,dint_valueB)         \
-    ((Dintp1(dint_valueA) << 33 - SGL_EXP_LENGTH) || Dintp2(dint_valueB))
+    (((Dintp1(dint_valueA) << 33 - SGL_EXP_LENGTH) != 0) || Dintp2(dint_valueB))
 
 #define Sgl_roundnearest_from_dint(dint_valueA,dint_valueB,sgl_value)  \
     if (Dintp1(dint_valueA) & 1<<(SGL_EXP_LENGTH - 2))                         \
-       if ((Dintp1(dint_valueA) << 34 - SGL_EXP_LENGTH) ||             \
+       if (((Dintp1(dint_valueA) << 34 - SGL_EXP_LENGTH) != 0) ||      \
        Dintp2(dint_valueB) || Slow(sgl_value)) Sall(sgl_value)++
 
 #define Dint_isinexact_to_dbl(dint_value)      \