diff -Nur linux-4.1.13.orig/arch/sh/Makefile linux-4.1.13/arch/sh/Makefile
--- linux-4.1.13.orig/arch/sh/Makefile	2015-11-09 23:34:10.000000000 +0100
+++ linux-4.1.13/arch/sh/Makefile	2015-12-06 19:59:31.000000000 +0100
@@ -200,7 +206,9 @@
   KBUILD_CFLAGS += -fasynchronous-unwind-tables
 endif
 
-libs-$(CONFIG_SUPERH32)		:= arch/sh/lib/	$(libs-y)
+LIBGCC = $(shell $(CC) $(KBUILD_CFLAGS) -print-file-name=libgcc.a)
+
+libs-$(CONFIG_SUPERH32)		:= arch/sh/lib/	$(libs-y) $(LIBGCC)
 libs-$(CONFIG_SUPERH64)		:= arch/sh/lib64/ $(libs-y)
 
 BOOT_TARGETS = uImage uImage.bz2 uImage.gz uImage.lzma uImage.xz uImage.lzo \
diff -Nur linux-4.1.13.orig/arch/sh/lib/Makefile linux-4.1.13/arch/sh/lib/Makefile
--- linux-4.1.13.orig/arch/sh/lib/Makefile	2015-11-09 23:34:10.000000000 +0100
+++ linux-4.1.13/arch/sh/lib/Makefile	2015-12-06 19:59:14.000000000 +0100
@@ -5,11 +5,6 @@
 lib-y  = delay.o memmove.o memchr.o \
 	 checksum.o strlen.o div64.o div64-generic.o
 
-# Extracted from libgcc
-obj-y += movmem.o ashldi3.o ashrdi3.o lshrdi3.o \
-	 ashlsi3.o ashrsi3.o ashiftrt.o lshrsi3.o \
-	 udiv_qrnnd.o
-
 udivsi3-y			:= udivsi3_i4i-Os.o
 
 ifneq ($(CONFIG_CC_OPTIMIZE_FOR_SIZE),y)
