upgrade Linaro GCC to 4.5-2011.05-0 - thanks to Mark Mentovai

SVN-Revision: 27118
master
Mirko Vogt 13 years ago
parent 254812ba0a
commit 59ad83aff1
  1. 2
      toolchain/gcc/Config.in
  2. 8
      toolchain/gcc/common.mk
  3. 4
      toolchain/gcc/patches/linaro/600-ubicom_support.patch
  4. 14
      toolchain/gcc/patches/linaro/840-armv4_pass_fix-v4bx_to_ld.patch
  5. 14
      toolchain/gcc/patches/linaro/850-use_shared_libgcc.patch
  6. 18
      toolchain/gcc/patches/linaro/860-fix_extension_elimination.patch
  7. 4
      toolchain/gcc/patches/linaro/910-mbsd_multi.patch
  8. 2
      toolchain/gcc/patches/linaro/993-arm_insn-opinit-RTX_CODE-fixup.patch
  9. 18
      toolchain/gcc/patches/linaro/995-fa526.patch
  10. 2
      toolchain/gcc/patches/linaro/999-coldfire.patch

@ -19,7 +19,7 @@ choice
bool "gcc 4.5.2" bool "gcc 4.5.2"
config GCC_VERSION_LINARO config GCC_VERSION_LINARO
bool "gcc 4.5.2 with Linaro enhancements" bool "gcc 4.5.x with Linaro enhancements"
config GCC_VERSION_LLVM config GCC_VERSION_LLVM
bool "llvm-gcc 4.2" bool "llvm-gcc 4.2"

@ -37,11 +37,11 @@ ifdef CONFIG_GCC_VERSION_LLVM
HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(GCC_DIR) HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(GCC_DIR)
else else
ifeq ($(CONFIG_GCC_VERSION),"linaro") ifeq ($(CONFIG_GCC_VERSION),"linaro")
PKG_REV:=4.5-2011.02-0 PKG_REV:=4.5-2011.05-0
PKG_VERSION:=4.5.2 PKG_VERSION:=4.5.4
PKG_SOURCE_URL:=http://launchpad.net/gcc-linaro/4.5/4.5-2011.02-0/+download/ PKG_SOURCE_URL:=http://launchpad.net/gcc-linaro/4.5/$(PKG_REV)/+download/
PKG_SOURCE:=$(PKG_NAME)-linaro-$(PKG_REV).tar.bz2 PKG_SOURCE:=$(PKG_NAME)-linaro-$(PKG_REV).tar.bz2
PKG_MD5SUM:=d93199c1296e053f57fcc7888b54d488 PKG_MD5SUM:=7ec3e08bc39fe24f3c14006c003f5669
GCC_DIR:=gcc-linaro-$(PKG_REV) GCC_DIR:=gcc-linaro-$(PKG_REV)
HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(GCC_DIR) HOST_BUILD_DIR:=$(BUILD_DIR_TOOLCHAIN)/$(GCC_DIR)
else else

@ -9313,7 +9313,7 @@
+#define FATAL_EXIT_CODE 33 +#define FATAL_EXIT_CODE 33
--- a/gcc/config.gcc --- a/gcc/config.gcc
+++ b/gcc/config.gcc +++ b/gcc/config.gcc
@@ -2497,6 +2497,34 @@ spu-*-elf*) @@ -2525,6 +2525,34 @@ spu-*-elf*)
c_target_objs="${c_target_objs} spu-c.o" c_target_objs="${c_target_objs} spu-c.o"
cxx_target_objs="${cxx_target_objs} spu-c.o" cxx_target_objs="${cxx_target_objs} spu-c.o"
;; ;;
@ -9350,7 +9350,7 @@
tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h v850/v850.h" tm_file="dbxelf.h elfos.h svr4.h newlib-stdint.h v850/v850.h"
--- a/libgcc/config.host --- a/libgcc/config.host
+++ b/libgcc/config.host +++ b/libgcc/config.host
@@ -560,6 +560,15 @@ sparc64-*-netbsd*) @@ -562,6 +562,15 @@ sparc64-*-netbsd*)
;; ;;
spu-*-elf*) spu-*-elf*)
;; ;;

@ -1,6 +1,6 @@
--- a/gcc/config/arm/linux-eabi.h --- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h
@@ -63,10 +63,14 @@ @@ -63,12 +63,16 @@
#undef GLIBC_DYNAMIC_LINKER #undef GLIBC_DYNAMIC_LINKER
#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3" #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3"
@ -11,8 +11,10 @@
/* At this point, bpabi.h will have clobbered LINK_SPEC. We want to /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
use the GNU/Linux version, not the generic BPABI version. */ use the GNU/Linux version, not the generic BPABI version. */
#undef LINK_SPEC #undef LINK_SPEC
-#define LINK_SPEC LINUX_TARGET_LINK_SPEC BE8_LINK_SPEC #define LINK_SPEC BE8_LINK_SPEC \
+#define LINK_SPEC LINUX_TARGET_LINK_SPEC BE8_LINK_SPEC TARGET_FIX_V4BX_SPEC LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \
- LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC)
/* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we + LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) \
do not use -lfloat. */
#undef CC1_SPEC
#define CC1_SPEC \

@ -1,9 +1,9 @@
--- a/gcc/config/arm/linux-eabi.h --- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h
@@ -72,10 +72,6 @@ @@ -95,10 +95,6 @@
#undef LINK_SPEC #define ENDFILE_SPEC \
#define LINK_SPEC LINUX_TARGET_LINK_SPEC BE8_LINK_SPEC TARGET_FIX_V4BX_SPEC LINUX_OR_ANDROID_LD (LINUX_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC)
-/* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we -/* Use the default LIBGCC_SPEC, not the version in linux-elf.h, as we
- do not use -lfloat. */ - do not use -lfloat. */
-#undef LIBGCC_SPEC -#undef LIBGCC_SPEC
@ -24,7 +24,7 @@
#define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \ #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
--- a/gcc/config/linux.h --- a/gcc/config/linux.h
+++ b/gcc/config/linux.h +++ b/gcc/config/linux.h
@@ -104,6 +104,10 @@ @@ -116,6 +116,10 @@
#define USE_LD_AS_NEEDED 1 #define USE_LD_AS_NEEDED 1
#endif #endif
@ -33,8 +33,8 @@
+#endif +#endif
+ +
/* Determine which dynamic linker to use depending on whether GLIBC or /* Determine which dynamic linker to use depending on whether GLIBC or
uClibc is the default C library and whether -muclibc or -mglibc has uClibc or Bionic is the default C library and whether
been passed to change the default. */ -muclibc or -mglibc or -mbionic has been passed to change the default. */
--- a/gcc/mkmap-symver.awk --- a/gcc/mkmap-symver.awk
+++ b/gcc/mkmap-symver.awk +++ b/gcc/mkmap-symver.awk
@@ -132,5 +132,5 @@ @@ -132,5 +132,5 @@

@ -1,18 +0,0 @@
https://bugs.launchpad.net/gcc-linaro/+bug/728315
https://lists.openwrt.org/pipermail/openwrt-devel/2011-March/009847.html
--- a/gcc/ee.c
+++ b/gcc/ee.c
@@ -209,7 +209,11 @@
*regno = REGNO (reg);
- if (paradoxical_subreg_p (use))
+ /* Non-paradoxical SUBREGs of promoted vars guarantee that the
+ upper (elided) bits of the inner register have a particular value.
+ For our purposes, such SUBREGs act as a full reference to the
+ inner register. */
+ if (paradoxical_subreg_p (use) || SUBREG_PROMOTED_VAR_P (use))
*size = GET_MODE_BITSIZE (GET_MODE (reg));
else
*size = subreg_lsb (use) + GET_MODE_BITSIZE (GET_MODE (use));

@ -209,7 +209,7 @@
-Wfatal-errors -Wfloat-equal -Wformat -Wformat=2 @gol -Wfatal-errors -Wfloat-equal -Wformat -Wformat=2 @gol
-Wno-format-contains-nul -Wno-format-extra-args -Wformat-nonliteral @gol -Wno-format-contains-nul -Wno-format-extra-args -Wformat-nonliteral @gol
-Wformat-security -Wformat-y2k @gol -Wformat-security -Wformat-y2k @gol
@@ -4359,6 +4359,22 @@ This option is only supported for C and @@ -4360,6 +4360,22 @@ This option is only supported for C and
@option{-Wall} and by @option{-pedantic}, which can be disabled with @option{-Wall} and by @option{-pedantic}, which can be disabled with
@option{-Wno-pointer-sign}. @option{-Wno-pointer-sign}.
@ -232,7 +232,7 @@
@item -Wstack-protector @item -Wstack-protector
@opindex Wstack-protector @opindex Wstack-protector
@opindex Wno-stack-protector @opindex Wno-stack-protector
@@ -6112,7 +6128,7 @@ so, the first branch is redirected to ei @@ -6114,7 +6130,7 @@ so, the first branch is redirected to ei
second branch or a point immediately following it, depending on whether second branch or a point immediately following it, depending on whether
the condition is known to be true or false. the condition is known to be true or false.

@ -1,6 +1,6 @@
--- a/gcc/config/arm/arm-protos.h --- a/gcc/config/arm/arm-protos.h
+++ b/gcc/config/arm/arm-protos.h +++ b/gcc/config/arm/arm-protos.h
@@ -43,10 +43,10 @@ extern unsigned int arm_dbx_register_num @@ -44,10 +44,10 @@ extern unsigned int arm_dbx_register_num
extern void arm_output_fn_unwind (FILE *, bool); extern void arm_output_fn_unwind (FILE *, bool);

@ -214,14 +214,14 @@
+ +
--- a/gcc/config/arm/t-arm --- a/gcc/config/arm/t-arm
+++ b/gcc/config/arm/t-arm +++ b/gcc/config/arm/t-arm
@@ -24,6 +24,7 @@ MD_INCLUDES= $(srcdir)/config/arm/arm-t @@ -23,6 +23,7 @@ MD_INCLUDES= $(srcdir)/config/arm/arm-t
$(srcdir)/config/arm/arm1020e.md \ $(srcdir)/config/arm/arm-generic.md \
$(srcdir)/config/arm/arm1026ejs.md \ $(srcdir)/config/arm/arm1020e.md \
$(srcdir)/config/arm/arm1136jfs.md \ $(srcdir)/config/arm/arm1026ejs.md \
+ $(srcdir)/config/arm/fa526.md \ + $(srcdir)/config/arm/fa526.md \
$(srcdir)/config/arm/arm926ejs.md \ $(srcdir)/config/arm/arm1136jfs.md \
$(srcdir)/config/arm/cirrus.md \ $(srcdir)/config/arm/arm926ejs.md \
$(srcdir)/config/arm/fpa.md \ $(srcdir)/config/arm/cirrus.md \
--- a/gcc/config/arm/t-arm-elf --- a/gcc/config/arm/t-arm-elf
+++ b/gcc/config/arm/t-arm-elf +++ b/gcc/config/arm/t-arm-elf
@@ -36,6 +36,10 @@ MULTILIB_DIRNAMES = arm thumb @@ -36,6 +36,10 @@ MULTILIB_DIRNAMES = arm thumb
@ -245,7 +245,7 @@
# MULTILIB_DIRNAMES += ep9312 # MULTILIB_DIRNAMES += ep9312
--- a/gcc/doc/invoke.texi --- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi
@@ -9900,7 +9900,8 @@ assembly code. Permissible names are: @ @@ -9923,7 +9923,8 @@ assembly code. Permissible names are: @
@samp{cortex-r4}, @samp{cortex-r4f}, @samp{cortex-m4}, @samp{cortex-m3}, @samp{cortex-r4}, @samp{cortex-r4f}, @samp{cortex-m4}, @samp{cortex-m3},
@samp{cortex-m1}, @samp{cortex-m1},
@samp{cortex-m0}, @samp{cortex-m0},

@ -1,6 +1,6 @@
--- a/gcc/config.gcc --- a/gcc/config.gcc
+++ b/gcc/config.gcc +++ b/gcc/config.gcc
@@ -1662,6 +1662,7 @@ m68k-*-linux*) # Motorola m68k's runnin @@ -1690,6 +1690,7 @@ m68k-*-linux*) # Motorola m68k's runnin
if test x$sjlj != x1; then if test x$sjlj != x1; then
tmake_file="$tmake_file m68k/t-slibgcc-elf-ver" tmake_file="$tmake_file m68k/t-slibgcc-elf-ver"
fi fi

Loading…
Cancel
Save