aboutsummaryrefslogtreecommitdiff
path: root/arch/arm/vfp/vfpdouble.c
diff options
context:
space:
mode:
authorTakashi Ohmasa <ohmasa.takashi@com.rmk.(none)>2006-10-23 08:30:35 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-10-28 10:15:31 +0100
commite816d71a50a714b532e3965364f3f53c23a53d42 (patch)
tree3f65a1733e6c21e03b4c29d3f74501c9fd60719b /arch/arm/vfp/vfpdouble.c
parent75e31aaaf43b53517fd2b36cedc08bd4e4af14d5 (diff)
[ARM] 3899/1: Fix the normalization of the denormal double precision number.
The significand should be shifted until the value of bit [62] is 1 to normalize the denormal double number. Signed-off-by: Takashi Ohmasa <ohmasa.takashi@jp.panasonic.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/vfp/vfpdouble.c')
-rw-r--r--arch/arm/vfp/vfpdouble.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/vfp/vfpdouble.c b/arch/arm/vfp/vfpdouble.c
index 4fc05ee0a2e..e44b9ed0f81 100644
--- a/arch/arm/vfp/vfpdouble.c
+++ b/arch/arm/vfp/vfpdouble.c
@@ -56,7 +56,7 @@ static void vfp_double_normalise_denormal(struct vfp_double *vd)
{
int bits = 31 - fls(vd->significand >> 32);
if (bits == 31)
- bits = 62 - fls(vd->significand);
+ bits = 63 - fls(vd->significand);
vfp_double_dump("normalise_denormal: in", vd);