Просмотр исходного кода

m68k/math-emu: unsigned issue, 'unsigned long' will never be less than zero

'oldmant.m32[1]' is 'unsigned long' which can never be '< 0', and the
original author wanted to check whether the highest bit is set.

So make the bit test explicit (which is better than casting from 'unsigned
long' to 'long').

The related warning: (with EXTRA_CFLAGS=-W ARCH=m68k for allmodconfig)
  arch/m68k/math-emu/fp_arith.c:522:4: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits]

Signed-off-by: Chen Gang <gang.chen@asianux.com>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Chen Gang 12 лет назад
Родитель
Сommit
ddc2fc2c5b
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      arch/m68k/math-emu/fp_arith.c

+ 1 - 1
arch/m68k/math-emu/fp_arith.c

@@ -519,7 +519,7 @@ static void fp_roundint(struct fp_ext *dest, int mode)
 				return;
 			break;
 		case 0x401e:
-			if (!(oldmant.m32[1] >= 0))
+			if (oldmant.m32[1] & 0x80000000)
 				return;
 			if (oldmant.m32[0] & 1)
 				break;