aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh/lib/Makefile
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2008-11-18 17:33:48 +0900
committerPaul Mundt <lethal@linux-sh.org>2008-12-22 18:42:53 +0900
commit1aad54a99b6ce316c851ba99b2efe41998cfd37d (patch)
tree287f90771c7da18a0841d40db1c0ce92ea7f5820 /arch/sh/lib/Makefile
parente9bf51e5ccc7703226c79888603e157066213700 (diff)
downloadkernel_goldelico_gta04-1aad54a99b6ce316c851ba99b2efe41998cfd37d.zip
kernel_goldelico_gta04-1aad54a99b6ce316c851ba99b2efe41998cfd37d.tar.gz
kernel_goldelico_gta04-1aad54a99b6ce316c851ba99b2efe41998cfd37d.tar.bz2
sh: Migrate necessary libgcc bits in to arch/sh/lib for SUPERH32.
This moves in the necessary libgcc bits for SUPERH32 and drops the libgcc linking for the regular targets. This in turn allows us to rip out quite a few hacks both in sh_ksyms_32 and arch/sh/Makefile. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/lib/Makefile')
-rw-r--r--arch/sh/lib/Makefile14
1 files changed, 13 insertions, 1 deletions
diff --git a/arch/sh/lib/Makefile b/arch/sh/lib/Makefile
index 5964218..a30acb8 100644
--- a/arch/sh/lib/Makefile
+++ b/arch/sh/lib/Makefile
@@ -5,6 +5,18 @@
lib-y = delay.o memset.o memmove.o memchr.o \
checksum.o strlen.o div64.o div64-generic.o
+# Extracted from libgcc
+lib-y += movmem.o ashldi3.o ashrdi3.o lshrdi3.o \
+ ashlsi3.o ashrsi3.o ashiftrt.o lshrsi3.o \
+ udiv_qrnnd.o
+
+udivsi3-y := udivsi3-Os.o
+
+ifneq ($(CONFIG_CC_OPTIMIZE_FOR_SIZE),y)
+udivsi3-$(CONFIG_CPU_SH3) := udivsi3.o
+udivsi3-$(CONFIG_CPU_SH4) := udivsi3.o
+endif
+
obj-y += io.o
memcpy-y := memcpy.o
@@ -12,6 +24,6 @@ memcpy-$(CONFIG_CPU_SH4) := memcpy-sh4.o
lib-$(CONFIG_MMU) += copy_page.o clear_page.o
lib-$(CONFIG_FUNCTION_TRACER) += mcount.o
-lib-y += $(memcpy-y)
+lib-y += $(memcpy-y) $(udivsi3-y)
EXTRA_CFLAGS += -Werror