From 4039736e6f7867a4f937145afec7ab56531c0be4 Mon Sep 17 00:00:00 2001 From: Peter Maydell Date: Sun, 2 Jun 2013 16:17:49 +0100 Subject: softfloat: Fix shift128Right for shift counts 64..127 shift128Right would give the wrong result for a shift count between 64 and 127. This was never noticed because all of our uses of this function are guaranteed not to use shift counts in this range. Signed-off-by: Peter Maydell Reviewed-by: Paolo Bonzini Message-id: 1370186269-24353-1-git-send-email-peter.maydell@linaro.org Signed-off-by: Anthony Liguori --- fpu/softfloat-macros.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fpu') diff --git a/fpu/softfloat-macros.h b/fpu/softfloat-macros.h index b5164af7fa..9b095456c5 100644 --- a/fpu/softfloat-macros.h +++ b/fpu/softfloat-macros.h @@ -168,7 +168,7 @@ INLINE void z0 = a0>>count; } else { - z1 = ( count < 64 ) ? ( a0>>( count & 63 ) ) : 0; + z1 = (count < 128) ? (a0 >> (count & 63)) : 0; z0 = 0; } *z1Ptr = z1; -- cgit v1.2.1