From dcdd37c594c04341baf9dc862a55ccd27deb3aee Mon Sep 17 00:00:00 2001
From: kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Thu, 11 Jun 2015 11:57:11 +0000
Subject: [PATCH] toolchain/gcc: upgrade Linaro GCC 4.9 to 4.9-2015.03

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>



git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45944 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 toolchain/gcc/common.mk                              |  8 ++++----
 .../gcc/patches/4.9-linaro/010-documentation.patch   |  2 +-
 .../gcc/patches/4.9-linaro/200-musl_config.patch     |  4 ++--
 toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch |  2 +-
 .../gcc/patches/4.9-linaro/203-musl_powerpc.patch    |  6 +++---
 toolchain/gcc/patches/4.9-linaro/204-musl_sh.patch   |  2 +-
 toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch  |  2 +-
 .../gcc/patches/4.9-linaro/209-musl_libstdc++.patch  |  4 ++--
 .../patches/4.9-linaro/220-musl_mips_softfloat.patch |  2 +-
 .../gcc/patches/4.9-linaro/221-musl_mips64.patch     | 12 +++++-------
 .../4.9-linaro/800-arm_v5te_no_ldrd_strd.patch       |  2 +-
 .../patches/4.9-linaro/870-ppc_no_crtsavres.patch    |  2 +-
 .../gcc/patches/4.9-linaro/910-mbsd_multi.patch      |  6 +++---
 .../4.9-linaro/920-specs_nonfatal_getenv.patch       |  2 +-
 .../4.9-linaro/930-fix-mips-noexecstack.patch        |  8 ++++----
 .../4.9-linaro/940-no-clobber-stamp-bits.patch       |  8 +++-----
 16 files changed, 34 insertions(+), 38 deletions(-)

diff --git a/toolchain/gcc/common.mk b/toolchain/gcc/common.mk
index 67263cf34c..d07f607c47 100644
--- a/toolchain/gcc/common.mk
+++ b/toolchain/gcc/common.mk
@@ -42,11 +42,11 @@ ifeq ($(findstring linaro, $(CONFIG_GCC_VERSION)),linaro)
       PKG_COMP:=xz
     endif
     ifeq ($(CONFIG_GCC_VERSION),"4.9-linaro")
-      LINARO_RELEASE:=14.10
-      PKG_REV:=4.9-2014.10
-      PKG_VERSION:=4.9.2
+      LINARO_RELEASE:=15.03
+      PKG_REV:=4.9-2015.03
+      PKG_VERSION:=4.9.3
       PKG_VERSION_MAJOR:=4.9
-      PKG_MD5SUM:=230da25b1e7661a8659eb770c5c88442
+      PKG_MD5SUM:=f9d256d120adfbb45dd3e2d22b70cba9
       PKG_COMP:=xz
     endif
     ifneq ($(LINARO_RELEASE),)
diff --git a/toolchain/gcc/patches/4.9-linaro/010-documentation.patch b/toolchain/gcc/patches/4.9-linaro/010-documentation.patch
index b8adce838f..9f17b64da9 100644
--- a/toolchain/gcc/patches/4.9-linaro/010-documentation.patch
+++ b/toolchain/gcc/patches/4.9-linaro/010-documentation.patch
@@ -1,6 +1,6 @@
 --- a/gcc/Makefile.in
 +++ b/gcc/Makefile.in
-@@ -2842,18 +2842,10 @@ doc/gcc.info: $(TEXI_GCC_FILES)
+@@ -2847,18 +2847,10 @@ doc/gcc.info: $(TEXI_GCC_FILES)
  doc/gccint.info: $(TEXI_GCCINT_FILES)
  doc/cppinternals.info: $(TEXI_CPPINT_FILES)
  
diff --git a/toolchain/gcc/patches/4.9-linaro/200-musl_config.patch b/toolchain/gcc/patches/4.9-linaro/200-musl_config.patch
index ce8865fa82..f7c8adadc2 100644
--- a/toolchain/gcc/patches/4.9-linaro/200-musl_config.patch
+++ b/toolchain/gcc/patches/4.9-linaro/200-musl_config.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config.gcc
 +++ b/gcc/config.gcc
-@@ -594,7 +594,7 @@ case ${target} in
+@@ -595,7 +595,7 @@ case ${target} in
  esac
  
  # Common C libraries.
@@ -9,7 +9,7 @@
  
  # 32-bit x86 processors supported by --with-arch=.  Each processor
  # MUST be separated by exactly one space.
-@@ -719,6 +719,9 @@ case ${target} in
+@@ -720,6 +720,9 @@ case ${target} in
      *-*-*uclibc*)
        tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC"
        ;;
diff --git a/toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch b/toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch
index 2a8836e8f6..06d25d52e4 100644
--- a/toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch
+++ b/toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/mips/linux.h
 +++ b/gcc/config/mips/linux.h
-@@ -23,3 +23,10 @@ along with GCC; see the file COPYING3.  
+@@ -23,3 +23,10 @@ along with GCC; see the file COPYING3.
  #undef UCLIBC_DYNAMIC_LINKER
  #define UCLIBC_DYNAMIC_LINKER \
    "%{mnan=2008:/lib/ld-uClibc-mipsn8.so.0;:/lib/ld-uClibc.so.0}"
diff --git a/toolchain/gcc/patches/4.9-linaro/203-musl_powerpc.patch b/toolchain/gcc/patches/4.9-linaro/203-musl_powerpc.patch
index 93087bbe19..4340c5fd2f 100644
--- a/toolchain/gcc/patches/4.9-linaro/203-musl_powerpc.patch
+++ b/toolchain/gcc/patches/4.9-linaro/203-musl_powerpc.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config.gcc
 +++ b/gcc/config.gcc
-@@ -2334,6 +2334,10 @@ powerpc*-*-linux*)
+@@ -2344,6 +2344,10 @@ powerpc*-*-linux*)
  	    powerpc*-*-linux*paired*)
  		tm_file="${tm_file} rs6000/750cl.h" ;;
  	esac
@@ -13,7 +13,7 @@
  	fi
 --- a/gcc/config/rs6000/linux64.h
 +++ b/gcc/config/rs6000/linux64.h
-@@ -375,17 +375,21 @@ extern int dot_symbols;
+@@ -371,17 +371,21 @@ extern int dot_symbols;
  #endif
  #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0"
  #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0"
@@ -41,7 +41,7 @@
  #if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
 --- a/gcc/config/rs6000/secureplt.h
 +++ b/gcc/config/rs6000/secureplt.h
-@@ -18,3 +18,4 @@ along with GCC; see the file COPYING3.  
+@@ -18,3 +18,4 @@ along with GCC; see the file COPYING3.
  <http://www.gnu.org/licenses/>.  */
  
  #define CC1_SECURE_PLT_DEFAULT_SPEC "-msecure-plt"
diff --git a/toolchain/gcc/patches/4.9-linaro/204-musl_sh.patch b/toolchain/gcc/patches/4.9-linaro/204-musl_sh.patch
index 9a50c227e8..dfb5b51746 100644
--- a/toolchain/gcc/patches/4.9-linaro/204-musl_sh.patch
+++ b/toolchain/gcc/patches/4.9-linaro/204-musl_sh.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/sh/linux.h
 +++ b/gcc/config/sh/linux.h
-@@ -43,7 +43,14 @@ along with GCC; see the file COPYING3.  
+@@ -43,7 +43,14 @@ along with GCC; see the file COPYING3.
  
  #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
  
diff --git a/toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch b/toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch
index 9a25113319..d167105c00 100644
--- a/toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch
+++ b/toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/i386/linux.h
 +++ b/gcc/config/i386/linux.h
-@@ -21,3 +21,4 @@ along with GCC; see the file COPYING3.  
+@@ -21,3 +21,4 @@ along with GCC; see the file COPYING3.
  
  #define GNU_USER_LINK_EMULATION "elf_i386"
  #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
diff --git a/toolchain/gcc/patches/4.9-linaro/209-musl_libstdc++.patch b/toolchain/gcc/patches/4.9-linaro/209-musl_libstdc++.patch
index 6643935b18..00d5d313db 100644
--- a/toolchain/gcc/patches/4.9-linaro/209-musl_libstdc++.patch
+++ b/toolchain/gcc/patches/4.9-linaro/209-musl_libstdc++.patch
@@ -1,6 +1,6 @@
 --- a/libstdc++-v3/configure.host
 +++ b/libstdc++-v3/configure.host
-@@ -264,6 +264,13 @@ case "${host_os}" in
+@@ -263,6 +263,13 @@ case "${host_os}" in
      os_include_dir="os/bsd/freebsd"
      ;;
    gnu* | linux* | kfreebsd*-gnu | knetbsd*-gnu)
@@ -14,7 +14,7 @@
      if [ "$uclibc" = "yes" ]; then
        os_include_dir="os/uclibc"
      elif [ "$bionic" = "yes" ]; then
-@@ -272,6 +279,9 @@ case "${host_os}" in
+@@ -271,6 +278,9 @@ case "${host_os}" in
        os_include_dir="os/gnu-linux"
      fi
      ;;
diff --git a/toolchain/gcc/patches/4.9-linaro/220-musl_mips_softfloat.patch b/toolchain/gcc/patches/4.9-linaro/220-musl_mips_softfloat.patch
index 8a63fd1c75..3b6b42a0a9 100644
--- a/toolchain/gcc/patches/4.9-linaro/220-musl_mips_softfloat.patch
+++ b/toolchain/gcc/patches/4.9-linaro/220-musl_mips_softfloat.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/mips/linux.h
 +++ b/gcc/config/mips/linux.h
-@@ -29,4 +29,4 @@ along with GCC; see the file COPYING3.  
+@@ -29,4 +29,4 @@ along with GCC; see the file COPYING3.
  #else
  #define MUSL_DYNAMIC_LINKER_E "%{EL:el}"
  #endif
diff --git a/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch b/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
index 7447dbd307..f10fc59d06 100644
--- a/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
+++ b/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch
@@ -1,10 +1,8 @@
-Index: gcc-linaro-4.8-2014.04/gcc/config/mips/linux64.h
-===================================================================
---- gcc-linaro-4.8-2014.04.orig/gcc/config/mips/linux64.h	2014-10-23 15:52:48.999134219 -0700
-+++ gcc-linaro-4.8-2014.04/gcc/config/mips/linux64.h	2014-10-23 15:59:19.815116979 -0700
-@@ -27,6 +27,16 @@
- #define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1"
- #define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0"
+--- a/gcc/config/mips/linux64.h
++++ b/gcc/config/mips/linux64.h
+@@ -39,6 +39,16 @@ along with GCC; see the file COPYING3.
+   "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}"
+ 
  #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
 +
 +#if TARGET_ENDIAN_DEFAULT == 0 /* LE */
diff --git a/toolchain/gcc/patches/4.9-linaro/800-arm_v5te_no_ldrd_strd.patch b/toolchain/gcc/patches/4.9-linaro/800-arm_v5te_no_ldrd_strd.patch
index 59022e3bad..0edeb13c75 100644
--- a/toolchain/gcc/patches/4.9-linaro/800-arm_v5te_no_ldrd_strd.patch
+++ b/toolchain/gcc/patches/4.9-linaro/800-arm_v5te_no_ldrd_strd.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/arm/arm.h
 +++ b/gcc/config/arm/arm.h
-@@ -282,7 +282,7 @@ extern void (*arm_lang_output_object_att
+@@ -285,7 +285,7 @@ extern void (*arm_lang_output_object_att
  /* Thumb-1 only.  */
  #define TARGET_THUMB1_ONLY		(TARGET_THUMB1 && !arm_arch_notm)
  
diff --git a/toolchain/gcc/patches/4.9-linaro/870-ppc_no_crtsavres.patch b/toolchain/gcc/patches/4.9-linaro/870-ppc_no_crtsavres.patch
index 93bb3e826f..4e9b50c017 100644
--- a/toolchain/gcc/patches/4.9-linaro/870-ppc_no_crtsavres.patch
+++ b/toolchain/gcc/patches/4.9-linaro/870-ppc_no_crtsavres.patch
@@ -1,6 +1,6 @@
 --- a/gcc/config/rs6000/rs6000.c
 +++ b/gcc/config/rs6000/rs6000.c
-@@ -20853,7 +20853,7 @@ rs6000_savres_strategy (rs6000_stack_t *
+@@ -20869,7 +20869,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)
      {
diff --git a/toolchain/gcc/patches/4.9-linaro/910-mbsd_multi.patch b/toolchain/gcc/patches/4.9-linaro/910-mbsd_multi.patch
index f14f08587a..0f69981641 100644
--- a/toolchain/gcc/patches/4.9-linaro/910-mbsd_multi.patch
+++ b/toolchain/gcc/patches/4.9-linaro/910-mbsd_multi.patch
@@ -145,7 +145,7 @@
  ; On SVR4 targets, it also controls whether or not to emit a
 --- a/gcc/opts.c
 +++ b/gcc/opts.c
-@@ -1536,6 +1536,17 @@ common_handle_option (struct gcc_options
+@@ -1572,6 +1572,17 @@ common_handle_option (struct gcc_options
  			       opts, opts_set, loc, dc);
        break;
  
@@ -188,7 +188,7 @@
  -Wfatal-errors  -Wfloat-equal  -Wformat  -Wformat=2 @gol
  -Wno-format-contains-nul -Wno-format-extra-args -Wformat-nonliteral @gol
  -Wformat-security  -Wformat-y2k @gol
-@@ -5042,6 +5042,22 @@ This option is only supported for C and 
+@@ -5042,6 +5042,22 @@ This option is only supported for C and
  @option{-Wall} and by @option{-Wpedantic}, which can be disabled with
  @option{-Wno-pointer-sign}.
  
@@ -211,7 +211,7 @@
  @item -Wstack-protector
  @opindex Wstack-protector
  @opindex Wno-stack-protector
-@@ -7189,7 +7205,7 @@ so, the first branch is redirected to ei
+@@ -7194,7 +7210,7 @@ so, the first branch is redirected to ei
  second branch or a point immediately following it, depending on whether
  the condition is known to be true or false.
  
diff --git a/toolchain/gcc/patches/4.9-linaro/920-specs_nonfatal_getenv.patch b/toolchain/gcc/patches/4.9-linaro/920-specs_nonfatal_getenv.patch
index 1c0b34e630..75379e494c 100644
--- a/toolchain/gcc/patches/4.9-linaro/920-specs_nonfatal_getenv.patch
+++ b/toolchain/gcc/patches/4.9-linaro/920-specs_nonfatal_getenv.patch
@@ -1,6 +1,6 @@
 --- a/gcc/gcc.c
 +++ b/gcc/gcc.c
-@@ -8106,7 +8106,10 @@ getenv_spec_function (int argc, const ch
+@@ -8105,7 +8105,10 @@ getenv_spec_function (int argc, const ch
  
    value = getenv (argv[0]);
    if (!value)
diff --git a/toolchain/gcc/patches/4.9-linaro/930-fix-mips-noexecstack.patch b/toolchain/gcc/patches/4.9-linaro/930-fix-mips-noexecstack.patch
index 72bacc1320..8d94933ce9 100644
--- a/toolchain/gcc/patches/4.9-linaro/930-fix-mips-noexecstack.patch
+++ b/toolchain/gcc/patches/4.9-linaro/930-fix-mips-noexecstack.patch
@@ -48,9 +48,9 @@ sellcey@mips.com
 
 --- a/gcc/config/mips/mips.c
 +++ b/gcc/config/mips/mips.c
-@@ -19134,6 +19134,9 @@ mips_atomic_assign_expand_fenv (tree *ho
- #undef TARGET_ATOMIC_ASSIGN_EXPAND_FENV
- #define TARGET_ATOMIC_ASSIGN_EXPAND_FENV mips_atomic_assign_expand_fenv
+@@ -19142,6 +19142,9 @@ mips_atomic_assign_expand_fenv (tree *ho
+ #define TARGET_USE_BY_PIECES_INFRASTRUCTURE_P \
+   mips_use_by_pieces_infrastructure_p
  
 +#undef TARGET_ASM_FILE_END
 +#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
@@ -85,7 +85,7 @@ sellcey@mips.com
  
 --- a/libgcc/config/mips/mips16.S
 +++ b/libgcc/config/mips/mips16.S
-@@ -31,6 +31,10 @@ see the files COPYING3 and COPYING.RUNTI
+@@ -35,6 +35,10 @@ see the files COPYING3 and COPYING.RUNTI
     values using the soft-float calling convention, but do the actual
     operation using the hard floating point instructions.  */
  
diff --git a/toolchain/gcc/patches/4.9-linaro/940-no-clobber-stamp-bits.patch b/toolchain/gcc/patches/4.9-linaro/940-no-clobber-stamp-bits.patch
index f874255819..32417942af 100644
--- a/toolchain/gcc/patches/4.9-linaro/940-no-clobber-stamp-bits.patch
+++ b/toolchain/gcc/patches/4.9-linaro/940-no-clobber-stamp-bits.patch
@@ -1,8 +1,6 @@
-Index: gcc-linaro-4.9-2014.10/libstdc++-v3/include/Makefile.in
-===================================================================
---- gcc-linaro-4.9-2014.10.orig/libstdc++-v3/include/Makefile.in	2013-11-16 12:44:48.000000000 -0500
-+++ gcc-linaro-4.9-2014.10/libstdc++-v3/include/Makefile.in	2014-12-02 06:23:02.236660279 -0500
-@@ -1366,7 +1366,7 @@
+--- a/libstdc++-v3/include/Makefile.in
++++ b/libstdc++-v3/include/Makefile.in
+@@ -1366,7 +1366,7 @@ stamp-bits: ${bits_headers}
  	@$(STAMP) stamp-bits
  
  stamp-bits-sup: stamp-bits ${bits_sup_headers}
-- 
GitLab