From 447f3f6322b4ec1aa218437f2cc4fead9ac9fcab Mon Sep 17 00:00:00 2001 From: nbd Date: Sat, 4 May 2013 13:37:37 +0000 Subject: toolchain/gcc: forward port missing patches to gcc 4.8.0 Signed-off-by: Felix Fietkau git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36544 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- toolchain/gcc/patches/4.8.0/820-libgcc_pic.patch | 36 ++++++++++++++++++++++ .../gcc/patches/4.8.0/870-ppc_no_crtsavres.patch | 11 +++++++ 2 files changed, 47 insertions(+) create mode 100644 toolchain/gcc/patches/4.8.0/820-libgcc_pic.patch create mode 100644 toolchain/gcc/patches/4.8.0/870-ppc_no_crtsavres.patch (limited to 'toolchain') diff --git a/toolchain/gcc/patches/4.8.0/820-libgcc_pic.patch b/toolchain/gcc/patches/4.8.0/820-libgcc_pic.patch new file mode 100644 index 000000000..7a0ac7353 --- /dev/null +++ b/toolchain/gcc/patches/4.8.0/820-libgcc_pic.patch @@ -0,0 +1,36 @@ +--- a/libgcc/Makefile.in ++++ b/libgcc/Makefile.in +@@ -865,11 +865,12 @@ $(libgcov-objects): %$(objext): $(srcdir + + # Static libraries. + libgcc.a: $(libgcc-objects) ++libgcc_pic.a: $(libgcc-s-objects) + libgcov.a: $(libgcov-objects) + libunwind.a: $(libunwind-objects) + libgcc_eh.a: $(libgcc-eh-objects) + +-libgcc.a libgcov.a libunwind.a libgcc_eh.a: ++libgcc.a libgcov.a libunwind.a libgcc_eh.a libgcc_pic.a: + -rm -f $@ + + objects="$(objects)"; \ +@@ -891,7 +892,7 @@ libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_E + endif + + ifeq ($(enable_shared),yes) +-all: libgcc_eh.a libgcc_s$(SHLIB_EXT) ++all: libgcc_eh.a libgcc_pic.a libgcc_s$(SHLIB_EXT) + ifneq ($(LIBUNWIND),) + all: libunwind$(SHLIB_EXT) + endif +@@ -1058,6 +1059,10 @@ install-shared: + chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a + $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a + ++ $(INSTALL_DATA) libgcc_pic.a $(mapfile) $(DESTDIR)$(inst_libdir)/ ++ chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_pic.a ++ $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_pic.a ++ + $(subst @multilib_dir@,$(MULTIDIR),$(subst \ + @shlib_base_name@,libgcc_s,$(subst \ + @shlib_slibdir_qual@,$(MULTIOSSUBDIR),$(SHLIB_INSTALL)))) diff --git a/toolchain/gcc/patches/4.8.0/870-ppc_no_crtsavres.patch b/toolchain/gcc/patches/4.8.0/870-ppc_no_crtsavres.patch new file mode 100644 index 000000000..d8c460a92 --- /dev/null +++ b/toolchain/gcc/patches/4.8.0/870-ppc_no_crtsavres.patch @@ -0,0 +1,11 @@ +--- a/gcc/config/rs6000/rs6000.c ++++ b/gcc/config/rs6000/rs6000.c +@@ -17653,7 +17653,7 @@ rs6000_savres_strategy (rs6000_stack_t * + /* Define cutoff for using out-of-line functions to save registers. */ + if (DEFAULT_ABI == ABI_V4 || TARGET_ELF) + { +- if (!optimize_size) ++ if (1) + { + strategy |= SAVE_INLINE_FPRS | REST_INLINE_FPRS; + strategy |= SAVE_INLINE_GPRS | REST_INLINE_GPRS; -- cgit v1.2.3