diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-07-06 03:58:04 +0200 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2007-07-06 03:58:04 +0200 |
commit | 04c7d9579f25ff0dd01efa958805f34c92bc6a71 (patch) | |
tree | 125a0da3b1d4397af86b562c5b4e8df1eedf10ab /arch/sh/lib/div64-generic.c | |
parent | sh: Fix timer-tmu build for SH-3. (diff) | |
download | linux-04c7d9579f25ff0dd01efa958805f34c92bc6a71.tar.xz linux-04c7d9579f25ff0dd01efa958805f34c92bc6a71.zip |
sh: Correct __xdiv64_32/div64_32 return value size.
These should be returning a uint32_t, whereas they were erroneously
returning a u64 before. As the register sizes are 32-bits, this doesn't
really make a lot of sense.
Reported-by: Katsuya MATSUBARA <matsu@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/lib/div64-generic.c')
-rw-r--r-- | arch/sh/lib/div64-generic.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/sh/lib/div64-generic.c b/arch/sh/lib/div64-generic.c index c02473afd581..d9482cd2a9ea 100644 --- a/arch/sh/lib/div64-generic.c +++ b/arch/sh/lib/div64-generic.c @@ -4,16 +4,15 @@ #include <linux/types.h> -extern u64 __xdiv64_32(u64 n, u32 d); +extern uint32_t __xdiv64_32(u64 n, u32 d); -u64 __div64_32(u64 *xp, u32 y) +uint32_t __div64_32(u64 *xp, u32 y) { - u64 rem; - u64 q = __xdiv64_32(*xp, y); + uint32_t rem; + uint32_t q = __xdiv64_32(*xp, y); rem = *xp - q * y; *xp = q; return rem; } - |