sh: Kill off udivdi3 div64_32 wrapping.
Paul Mundt [Wed, 28 Mar 2007 08:14:45 +0000 (17:14 +0900)]
Previously we've been handling udivdi3 references and wrapping
them in to div64_32() automatically. This doesn't get a lot of
use, however, and as akpm noted in the recent thread on l-k:

http://lkml.org/lkml/2007/2/27/241

we're better off simply ripping it out and going the do_div()
route if there happen to be any places that need it.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>

arch/sh/kernel/sh_ksyms.c
arch/sh/lib/Makefile
arch/sh/lib/udivdi3.c [deleted file]

index 6e0d10f..17f0b50 100644 (file)
@@ -65,7 +65,6 @@ EXPORT_SYMBOL(__div64_32);
 
 /* These symbols are generated by the compiler itself */
 DECLARE_EXPORT(__udivsi3);
-DECLARE_EXPORT(__udivdi3);
 DECLARE_EXPORT(__sdivsi3);
 DECLARE_EXPORT(__ashrdi3);
 DECLARE_EXPORT(__ashldi3);
index 0b9cca5..e23dd1a 100644 (file)
@@ -3,11 +3,9 @@
 #
 
 lib-y  = delay.o memset.o memmove.o memchr.o \
-        checksum.o strlen.o div64.o udivdi3.o \
-        div64-generic.o
+        checksum.o strlen.o div64.o div64-generic.o
 
 memcpy-y                       := memcpy.o
 memcpy-$(CONFIG_CPU_SH4)       := memcpy-sh4.o
 
 lib-y  += $(memcpy-y)
-
diff --git a/arch/sh/lib/udivdi3.c b/arch/sh/lib/udivdi3.c
deleted file mode 100644 (file)
index 68f038b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-/*
- * Simple __udivdi3 function which doesn't use FPU.
- */
-
-#include <linux/types.h>
-
-extern u64 __xdiv64_32(u64 n, u32 d);
-extern void panic(const char * fmt, ...);
-
-u64 __udivdi3(u64 n, u64 d)
-{
-       if (d & ~0xffffffff)
-               panic("Need true 64-bit/64-bit division");
-       return __xdiv64_32(n, (u32)d);
-}
-