Author: hauke Date: 2015-08-16 22:20:36 +0200 (Sun, 16 Aug 2015) New Revision: 46611
Added: trunk/toolchain/gcc/patches/5.2.0/ trunk/toolchain/gcc/patches/5.2.0/230-musl_libssp.patch Removed: trunk/toolchain/gcc/patches/5.2.0/001-revert_register_mode_search.patch trunk/toolchain/gcc/patches/5.2.0/210-disable_libsanitizer_off_t_check.patch trunk/toolchain/gcc/patches/5.2.0/220-musl_mips_softfloat.patch trunk/toolchain/gcc/patches/5.2.0/221-musl_mips64.patch Modified: trunk/toolchain/gcc/Config.in trunk/toolchain/gcc/Config.version trunk/toolchain/gcc/common.mk trunk/toolchain/gcc/patches/5.2.0/010-documentation.patch trunk/toolchain/gcc/patches/5.2.0/020-no-plt-backport.patch trunk/toolchain/gcc/patches/5.2.0/200-musl_config.patch trunk/toolchain/gcc/patches/5.2.0/201-musl_arm.patch trunk/toolchain/gcc/patches/5.2.0/202-musl_mips.patch trunk/toolchain/gcc/patches/5.2.0/203-musl_powerpc.patch trunk/toolchain/gcc/patches/5.2.0/205-musl_x86.patch trunk/toolchain/gcc/patches/5.2.0/206-musl_aarch64.patch trunk/toolchain/gcc/patches/5.2.0/208-musl_gomp.patch trunk/toolchain/gcc/patches/5.2.0/209-musl_libstdc++.patch trunk/toolchain/gcc/patches/5.2.0/820-libgcc_pic.patch trunk/toolchain/gcc/patches/5.2.0/850-use_shared_libgcc.patch trunk/toolchain/gcc/patches/5.2.0/860-use_eh_frame.patch trunk/toolchain/gcc/patches/5.2.0/870-ppc_no_crtsavres.patch trunk/toolchain/gcc/patches/5.2.0/910-mbsd_multi.patch trunk/toolchain/gcc/patches/5.2.0/920-specs_nonfatal_getenv.patch trunk/toolchain/gcc/patches/5.2.0/930-fix-mips-noexecstack.patch trunk/toolchain/gcc/patches/5.2.0/940-no-clobber-stamp-bits.patch Log: toolchain: gcc: add gcc 5.2.0 This was boot tested on mipsel32, arm32 and x86 only. Signed-off-by: Hauke Mehrtens <[email protected]> Modified: trunk/toolchain/gcc/Config.in =================================================================== --- trunk/toolchain/gcc/Config.in 2015-08-16 20:16:43 UTC (rev 46610) +++ trunk/toolchain/gcc/Config.in 2015-08-16 20:20:36 UTC (rev 46611) @@ -20,6 +20,11 @@ bool "gcc 4.9.x with Linaro enhancements" depends on BROKEN + config GCC_USE_VERSION_5 + select GCC_VERSION_5 + bool "gcc 5.x" + depends on BROKEN + endchoice config GCC_USE_GRAPHITE Modified: trunk/toolchain/gcc/Config.version =================================================================== --- trunk/toolchain/gcc/Config.version 2015-08-16 20:16:43 UTC (rev 46610) +++ trunk/toolchain/gcc/Config.version 2015-08-16 20:20:36 UTC (rev 46611) @@ -12,6 +12,7 @@ config GCC_VERSION string default "4.6.3" if GCC_VERSION_4_6_3 + default "5.2.0" if GCC_VERSION_5 default "4.6-linaro" if GCC_VERSION_4_6_LINARO default "4.8-linaro" if GCC_VERSION_4_8_LINARO default "4.9-linaro" if GCC_VERSION_4_9_LINARO @@ -28,3 +29,6 @@ config GCC_VERSION_4_9 bool default y if GCC_VERSION_4_9_LINARO + +config GCC_VERSION_5 + bool Modified: trunk/toolchain/gcc/common.mk =================================================================== --- trunk/toolchain/gcc/common.mk 2015-08-16 20:16:43 UTC (rev 46610) +++ trunk/toolchain/gcc/common.mk 2015-08-16 20:20:36 UTC (rev 46611) @@ -67,6 +67,9 @@ ifeq ($(PKG_VERSION),4.8.0) PKG_MD5SUM:=e6040024eb9e761c3bea348d1fa5abb0 endif + ifeq ($(PKG_VERSION),5.2.0) + PKG_MD5SUM:=a51bcfeb3da7dd4c623e27207ed43467 + endif endif PATCH_DIR=../patches/$(GCC_VERSION) Deleted: trunk/toolchain/gcc/patches/5.2.0/001-revert_register_mode_search.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/001-revert_register_mode_search.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/001-revert_register_mode_search.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,65 +0,0 @@ -Revert of: - -commit 275035b56823b26d5fb7e90fad945b998648edf2 -Author: bergner <bergner@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Thu Sep 5 14:09:07 2013 +0000 - - PR target/58139 - * reginfo.c (choose_hard_reg_mode): Scan through all mode classes - looking for widest mode. - - - git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@202286 138bc75d-0d04-0410-961f-82ee72b054a4 - - ---- a/gcc/reginfo.c -+++ b/gcc/reginfo.c -@@ -621,35 +621,40 @@ choose_hard_reg_mode (unsigned int regno - mode = GET_MODE_WIDER_MODE (mode)) - if ((unsigned) hard_regno_nregs[regno][mode] == nregs - && HARD_REGNO_MODE_OK (regno, mode) -- && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode)) -- && GET_MODE_SIZE (mode) > GET_MODE_SIZE (found_mode)) -+ && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode))) - found_mode = mode; - -+ if (found_mode != VOIDmode) -+ return found_mode; -+ - for (mode = GET_CLASS_NARROWEST_MODE (MODE_FLOAT); - mode != VOIDmode; - mode = GET_MODE_WIDER_MODE (mode)) - if ((unsigned) hard_regno_nregs[regno][mode] == nregs - && HARD_REGNO_MODE_OK (regno, mode) -- && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode)) -- && GET_MODE_SIZE (mode) > GET_MODE_SIZE (found_mode)) -+ && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode))) - found_mode = mode; - -+ if (found_mode != VOIDmode) -+ return found_mode; -+ - for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_FLOAT); - mode != VOIDmode; - mode = GET_MODE_WIDER_MODE (mode)) - if ((unsigned) hard_regno_nregs[regno][mode] == nregs - && HARD_REGNO_MODE_OK (regno, mode) -- && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode)) -- && GET_MODE_SIZE (mode) > GET_MODE_SIZE (found_mode)) -+ && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode))) - found_mode = mode; - -+ if (found_mode != VOIDmode) -+ return found_mode; -+ - for (mode = GET_CLASS_NARROWEST_MODE (MODE_VECTOR_INT); - mode != VOIDmode; - mode = GET_MODE_WIDER_MODE (mode)) - if ((unsigned) hard_regno_nregs[regno][mode] == nregs - && HARD_REGNO_MODE_OK (regno, mode) -- && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode)) -- && GET_MODE_SIZE (mode) > GET_MODE_SIZE (found_mode)) -+ && (! call_saved || ! HARD_REGNO_CALL_PART_CLOBBERED (regno, mode))) - found_mode = mode; - - if (found_mode != VOIDmode) Modified: trunk/toolchain/gcc/patches/5.2.0/010-documentation.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/010-documentation.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/010-documentation.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/gcc/Makefile.in +++ b/gcc/Makefile.in -@@ -2847,18 +2847,10 @@ doc/gcc.info: $(TEXI_GCC_FILES) +@@ -2941,18 +2941,10 @@ doc/gcc.info: $(TEXI_GCC_FILES) doc/gccint.info: $(TEXI_GCCINT_FILES) doc/cppinternals.info: $(TEXI_CPPINT_FILES) Modified: trunk/toolchain/gcc/patches/5.2.0/020-no-plt-backport.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/020-no-plt-backport.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/020-no-plt-backport.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,12 +1,12 @@ --- a/gcc/calls.c +++ b/gcc/calls.c -@@ -184,6 +184,12 @@ prepare_call_address (tree fndecl, rtx f +@@ -225,6 +225,12 @@ prepare_call_address (tree fndecl_or_typ && targetm.small_register_classes_for_mode_p (FUNCTION_MODE)) ? force_not_mem (memory_address (FUNCTION_MODE, funexp)) : memory_address (FUNCTION_MODE, funexp)); -+ else if (flag_pic && !flag_plt && fndecl -+ && TREE_CODE (fndecl) == FUNCTION_DECL -+ && !targetm.binds_local_p (fndecl)) ++ else if (flag_pic && !flag_plt && fndecl_or_type ++ && TREE_CODE (fndecl_or_type) == FUNCTION_DECL ++ && !targetm.binds_local_p (fndecl_or_type)) + { + funexp = force_reg (Pmode, funexp); + } @@ -15,7 +15,7 @@ #ifndef NO_FUNCTION_CSE --- a/gcc/common.opt +++ b/gcc/common.opt -@@ -1659,6 +1659,10 @@ fpie +@@ -1779,6 +1779,10 @@ fpie Common Report Var(flag_pie,1) Negative(fPIC) Generate position-independent code for executables if possible (small mode) Modified: trunk/toolchain/gcc/patches/5.2.0/200-musl_config.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/200-musl_config.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/200-musl_config.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/gcc/config.gcc +++ b/gcc/config.gcc -@@ -595,7 +595,7 @@ case ${target} in +@@ -575,7 +575,7 @@ case ${target} in esac # Common C libraries. @@ -173,7 +173,7 @@ +Use musl C library --- a/gcc/ginclude/stddef.h +++ b/gcc/ginclude/stddef.h -@@ -181,6 +181,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; +@@ -184,6 +184,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #ifndef _GCC_SIZE_T #ifndef _SIZET_ #ifndef __size_t @@ -181,15 +181,15 @@ #define __size_t__ /* BeOS */ #define __SIZE_T__ /* Cray Unicos/Mk */ #define _SIZE_T -@@ -197,6 +198,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; +@@ -200,6 +201,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t; #define ___int_size_t_h #define _GCC_SIZE_T #define _SIZET_ +#define __DEFINED_size_t /* musl */ #if (defined (__FreeBSD__) && (__FreeBSD__ >= 5)) \ + || defined(__DragonFly__) \ || defined(__FreeBSD_kernel__) - /* __size_t is a typedef on FreeBSD 5, must not trash it. */ -@@ -214,6 +216,7 @@ typedef __SIZE_TYPE__ size_t; +@@ -218,6 +220,7 @@ typedef __SIZE_TYPE__ size_t; typedef long ssize_t; #endif /* __BEOS__ */ #endif /* !(defined (__GNUG__) && defined (size_t)) */ Modified: trunk/toolchain/gcc/patches/5.2.0/201-musl_arm.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/201-musl_arm.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/201-musl_arm.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,3 +1,19 @@ +From ec39b7c91facdd74fddea95128502c25ec3948a3 Mon Sep 17 00:00:00 2001 +From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Wed, 27 May 2015 13:17:11 +0000 +Subject: [PATCH 11/12] [PATCH 4/13] arm musl support + +On behalf of [email protected] + +2015-05-27 Gregor Richards <[email protected]> + + * config/arm/linux-eabi.h (MUSL_DYNAMIC_LINKER): Define. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223749 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/config/arm/linux-eabi.h | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + --- a/gcc/config/arm/linux-eabi.h +++ b/gcc/config/arm/linux-eabi.h @@ -77,6 +77,23 @@ Modified: trunk/toolchain/gcc/patches/5.2.0/202-musl_mips.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/202-musl_mips.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/202-musl_mips.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,13 +1,34 @@ +From 8de85695e46ed2bc57c3482b4f995be3a82c405e Mon Sep 17 00:00:00 2001 +From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Fri, 8 May 2015 15:16:50 +0000 +Subject: [PATCH 09/12] [PATCH 6/13] mips musl support + +2015-05-08 Gregor Richards <[email protected]> + Szabolcs Nagy <[email protected]> + + * config/mips/linux.h (MUSL_DYNAMIC_LINKER32): Define. + (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERN32): Define. + (GNU_USER_DYNAMIC_LINKERN32): Update. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@222915 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/config/mips/linux.h | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + --- a/gcc/config/mips/linux.h +++ b/gcc/config/mips/linux.h -@@ -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}" +@@ -37,7 +37,13 @@ along with GCC; see the file COPYING3. + #define UCLIBC_DYNAMIC_LINKERN32 \ + "%{mnan=2008:/lib32/ld-uClibc-mipsn8.so.0;:/lib32/ld-uClibc.so.0}" + ++#undef MUSL_DYNAMIC_LINKER32 ++#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-mips%{EL:el}%{msoft-float:-sf}.so.1" ++#undef MUSL_DYNAMIC_LINKER64 ++#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-mips64%{EL:el}%{msoft-float:-sf}.so.1" ++#define MUSL_DYNAMIC_LINKERN32 "/lib/ld-musl-mipsn32%{EL:el}%{msoft-float:-sf}.so.1" + -+#if TARGET_ENDIAN_DEFAULT == 0 /* LE */ -+#define MUSL_DYNAMIC_LINKER_E "%{EB:;:el}" -+#else -+#define MUSL_DYNAMIC_LINKER_E "%{EL:el}" -+#endif -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E ".so.1" + #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32" + #define GNU_USER_DYNAMIC_LINKERN32 \ + CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ +- BIONIC_DYNAMIC_LINKERN32) ++ BIONIC_DYNAMIC_LINKERN32, MUSL_DYNAMIC_LINKERN32) Modified: trunk/toolchain/gcc/patches/5.2.0/203-musl_powerpc.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/203-musl_powerpc.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/203-musl_powerpc.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/gcc/config.gcc +++ b/gcc/config.gcc -@@ -2344,6 +2344,10 @@ powerpc*-*-linux*) +@@ -2410,6 +2410,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 -@@ -371,17 +371,21 @@ extern int dot_symbols; +@@ -365,17 +365,21 @@ extern int dot_symbols; #endif #define UCLIBC_DYNAMIC_LINKER32 "/lib/ld-uClibc.so.0" #define UCLIBC_DYNAMIC_LINKER64 "/lib/ld64-uClibc.so.0" @@ -57,8 +57,8 @@ +#endif /* Pass -G xxx to the compiler. */ - #define CC1_SPEC "%{G*} %(cc1_cpu)" \ -@@ -585,7 +588,8 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF + #undef CC1_SPEC +@@ -586,7 +589,8 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF /* Override the default target of the linker. */ #define LINK_TARGET_SPEC \ @@ -68,7 +68,7 @@ /* Any specific OS flags. */ #define LINK_OS_SPEC "\ -@@ -763,15 +767,18 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF +@@ -764,15 +768,18 @@ ENDIAN_SELECT(" -mbig", " -mlittle", DEF #define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1" #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" @@ -90,7 +90,7 @@ #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ %{rdynamic:-export-dynamic} \ -@@ -894,6 +901,7 @@ ncrtn.o%s" +@@ -895,6 +902,7 @@ ncrtn.o%s" { "link_os_openbsd", LINK_OS_OPENBSD_SPEC }, \ { "link_os_default", LINK_OS_DEFAULT_SPEC }, \ { "cc1_secure_plt_default", CC1_SECURE_PLT_DEFAULT_SPEC }, \ Modified: trunk/toolchain/gcc/patches/5.2.0/205-musl_x86.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/205-musl_x86.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/205-musl_x86.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,19 +1,43 @@ +From 606b5b76926d42d26c08c7400c38afe07e18e3cd Mon Sep 17 00:00:00 2001 +From: ktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Fri, 15 May 2015 13:20:01 +0000 +Subject: [PATCH 10/12] [PATCH 9/13] x86 musl support + +On behalf of Szabolcs Nagy. + +2015-05-15 Gregor Richards <[email protected]> + + * config/i386/linux.h (MUSL_DYNAMIC_LINKER): Define. + * config/i386/linux64.h (MUSL_DYNAMIC_LINKER32): Define. + (MUSL_DYNAMIC_LINKER64, MUSL_DYNAMIC_LINKERX32): Define. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223218 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/config/i386/linux.h | 3 +++ + gcc/config/i386/linux64.h | 7 +++++++ + 2 files changed, 10 insertions(+) + --- 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,6 @@ along with GCC; see the file COPYING3. #define GNU_USER_LINK_EMULATION "elf_i386" #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++ ++#undef MUSL_DYNAMIC_LINKER +#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1" --- a/gcc/config/i386/linux64.h +++ b/gcc/config/i386/linux64.h -@@ -30,3 +30,7 @@ see the files COPYING3 and COPYING.RUNTI +@@ -30,3 +30,10 @@ see the files COPYING3 and COPYING.RUNTI #define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2" #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2" + ++#undef MUSL_DYNAMIC_LINKER32 +#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1" ++#undef MUSL_DYNAMIC_LINKER64 +#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-x86_64.so.1" ++#undef MUSL_DYNAMIC_LINKERX32 +#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1" --- a/libitm/config/linux/x86/tls.h +++ b/libitm/config/linux/x86/tls.h Modified: trunk/toolchain/gcc/patches/5.2.0/206-musl_aarch64.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/206-musl_aarch64.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/206-musl_aarch64.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,11 +1,29 @@ +From 3640f7722df1c5e39d1d4980e3dd51fbda45912c Mon Sep 17 00:00:00 2001 +From: jgreenhalgh <jgreenhalgh@138bc75d-0d04-0410-961f-82ee72b054a4> +Date: Wed, 27 May 2015 16:46:39 +0000 +Subject: [PATCH 12/12] [PATCH 3/13] aarch64 musl support + +gcc/Changelog: + +2015-05-27 Gregor Richards <[email protected]> + Szabolcs Nagy <[email protected]> + + * config/aarch64/aarch64-linux.h (MUSL_DYNAMIC_LINKER): Define. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@223766 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + gcc/config/aarch64/aarch64-linux.h | 3 +++ + 1 file changed, 3 insertions(+) + --- a/gcc/config/aarch64/aarch64-linux.h +++ b/gcc/config/aarch64/aarch64-linux.h -@@ -23,6 +23,8 @@ +@@ -23,6 +23,9 @@ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64.so.1" ++#undef MUSL_DYNAMIC_LINKER ++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" + - #define CPP_SPEC "%{pthread:-D_REENTRANT}" + #undef ASAN_CC1_SPEC + #define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}" - #define LINUX_TARGET_LINK_SPEC "%{h*} \ Modified: trunk/toolchain/gcc/patches/5.2.0/208-musl_gomp.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/208-musl_gomp.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/208-musl_gomp.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/libgomp/config/posix/time.c +++ b/libgomp/config/posix/time.c -@@ -28,6 +28,8 @@ +@@ -29,6 +29,8 @@ The following implementation uses the most simple POSIX routines. If present, POSIX 4 clocks should be used instead. */ Modified: trunk/toolchain/gcc/patches/5.2.0/209-musl_libstdc++.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/209-musl_libstdc++.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/209-musl_libstdc++.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/libstdc++-v3/configure.host +++ b/libstdc++-v3/configure.host -@@ -263,6 +263,13 @@ case "${host_os}" in +@@ -274,6 +274,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 -@@ -271,6 +278,9 @@ case "${host_os}" in +@@ -282,6 +289,9 @@ case "${host_os}" in os_include_dir="os/gnu-linux" fi ;; Deleted: trunk/toolchain/gcc/patches/5.2.0/210-disable_libsanitizer_off_t_check.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/210-disable_libsanitizer_off_t_check.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/210-disable_libsanitizer_off_t_check.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,11 +0,0 @@ ---- a/libsanitizer/interception/interception_type_test.cc -+++ b/libsanitizer/interception/interception_type_test.cc -@@ -31,7 +31,7 @@ COMPILER_CHECK(sizeof(OFF64_T) == sizeof - // rest (they depend on _FILE_OFFSET_BITS setting when building an application). - # if defined(__ANDROID__) || !defined _FILE_OFFSET_BITS || \ - _FILE_OFFSET_BITS != 64 --COMPILER_CHECK(sizeof(OFF_T) == sizeof(off_t)); -+// COMPILER_CHECK(sizeof(OFF_T) == sizeof(off_t)); - # endif - - #endif Deleted: trunk/toolchain/gcc/patches/5.2.0/220-musl_mips_softfloat.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/220-musl_mips_softfloat.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/220-musl_mips_softfloat.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,8 +0,0 @@ ---- a/gcc/config/mips/linux.h -+++ b/gcc/config/mips/linux.h -@@ -29,4 +29,4 @@ along with GCC; see the file COPYING3. - #else - #define MUSL_DYNAMIC_LINKER_E "%{EL:el}" - #endif --#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E ".so.1" -+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" Deleted: trunk/toolchain/gcc/patches/5.2.0/221-musl_mips64.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/221-musl_mips64.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/221-musl_mips64.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,20 +0,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 */ -+#define MUSL_DYNAMIC_LINKER_E "%{EB:;:el}" -+#else -+#define MUSL_DYNAMIC_LINKER_E "%{EL:el}" -+#endif -+ -+#define MUSL_DYNAMIC_LINKERN32 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" -+#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" -+#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-mips" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1" - #define GNU_USER_DYNAMIC_LINKERN32 \ - CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKERN32, UCLIBC_DYNAMIC_LINKERN32, \ -- BIONIC_DYNAMIC_LINKERN32) -+ BIONIC_DYNAMIC_LINKERN32, MUSL_DYNAMIC_LINKERN32) Added: trunk/toolchain/gcc/patches/5.2.0/230-musl_libssp.patch =================================================================== --- trunk/toolchain/gcc/patches/5.2.0/230-musl_libssp.patch (rev 0) +++ trunk/toolchain/gcc/patches/5.2.0/230-musl_libssp.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -0,0 +1,13 @@ +--- a/gcc/gcc.c ++++ b/gcc/gcc.c +@@ -727,7 +727,9 @@ proper position among the other output f + #endif + + #ifndef LINK_SSP_SPEC +-#ifdef TARGET_LIBC_PROVIDES_SSP ++#if DEFAULT_LIBC == LIBC_MUSL ++#define LINK_SSP_SPEC "-lssp_nonshared" ++#elif defined(TARGET_LIBC_PROVIDES_SSP) + #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ + "|fstack-protector-strong|fstack-protector-explicit:}" + #else Modified: trunk/toolchain/gcc/patches/5.2.0/820-libgcc_pic.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/820-libgcc_pic.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/820-libgcc_pic.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/libgcc/Makefile.in +++ b/libgcc/Makefile.in -@@ -881,11 +881,12 @@ $(libgcov-driver-objects): %$(objext): $ +@@ -887,11 +887,12 @@ $(libgcov-driver-objects): %$(objext): $ # Static libraries. libgcc.a: $(libgcc-objects) @@ -14,7 +14,7 @@ -rm -f $@ objects="$(objects)"; \ -@@ -907,7 +908,7 @@ libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_E +@@ -913,7 +914,7 @@ libgcc_s$(SHLIB_EXT): libunwind$(SHLIB_E endif ifeq ($(enable_shared),yes) @@ -23,7 +23,7 @@ ifneq ($(LIBUNWIND),) all: libunwind$(SHLIB_EXT) endif -@@ -1090,6 +1091,10 @@ install-shared: +@@ -1108,6 +1109,10 @@ install-shared: chmod 644 $(DESTDIR)$(inst_libdir)/libgcc_eh.a $(RANLIB) $(DESTDIR)$(inst_libdir)/libgcc_eh.a Modified: trunk/toolchain/gcc/patches/5.2.0/850-use_shared_libgcc.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/850-use_shared_libgcc.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/850-use_shared_libgcc.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -35,9 +35,9 @@ } --- a/gcc/config/rs6000/linux.h +++ b/gcc/config/rs6000/linux.h -@@ -62,6 +62,9 @@ - #undef CPLUSPLUS_CPP_SPEC - #define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)" +@@ -56,6 +56,9 @@ + #undef CPP_OS_DEFAULT_SPEC + #define CPP_OS_DEFAULT_SPEC "%(cpp_os_linux)" +#undef LIBGCC_SPEC +#define LIBGCC_SPEC "%{!static:%{!static-libgcc:-lgcc_s}} -lgcc" Modified: trunk/toolchain/gcc/patches/5.2.0/860-use_eh_frame.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/860-use_eh_frame.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/860-use_eh_frame.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/libgcc/unwind-dw2-fde-dip.c +++ b/libgcc/unwind-dw2-fde-dip.c -@@ -46,33 +46,13 @@ +@@ -46,34 +46,13 @@ #include "unwind-compat.h" #include "gthr.h" @@ -16,7 +16,8 @@ -#endif - -#if !defined(inhibit_libc) && defined(HAVE_LD_EH_FRAME_HDR) \ -- && defined(__FreeBSD__) && __FreeBSD__ >= 7 +- && defined(TARGET_DL_ITERATE_PHDR) \ +- && (defined(__DragonFly__) || defined(__FreeBSD__)) -# define ElfW __ElfN -# define USE_PT_GNU_EH_FRAME -#endif Modified: trunk/toolchain/gcc/patches/5.2.0/870-ppc_no_crtsavres.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/870-ppc_no_crtsavres.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/870-ppc_no_crtsavres.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c -@@ -20869,7 +20869,7 @@ rs6000_savres_strategy (rs6000_stack_t * +@@ -21453,7 +21453,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) { Modified: trunk/toolchain/gcc/patches/5.2.0/910-mbsd_multi.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/910-mbsd_multi.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/910-mbsd_multi.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -16,7 +16,7 @@ --- a/gcc/c-family/c-opts.c +++ b/gcc/c-family/c-opts.c -@@ -105,6 +105,9 @@ static size_t include_cursor; +@@ -122,6 +122,9 @@ static int class_dump_flags; /* Whether any standard preincluded header has been preincluded. */ static bool done_preinclude; @@ -26,17 +26,7 @@ static void handle_OPT_d (const char *); static void set_std_cxx98 (int); static void set_std_cxx11 (int); -@@ -384,6 +387,9 @@ c_common_handle_option (size_t scode, co - cpp_opts->warn_endif_labels = value; - break; - -+ case OPT_Werror_maybe_reset: -+ break; -+ - case OPT_Winvalid_pch: - cpp_opts->warn_invalid_pch = value; - break; -@@ -492,6 +498,12 @@ c_common_handle_option (size_t scode, co +@@ -449,6 +452,12 @@ c_common_handle_option (size_t scode, co flag_no_builtin = !value; break; @@ -49,7 +39,7 @@ case OPT_fconstant_string_class_: constant_string_class_name = arg; break; -@@ -1048,6 +1060,47 @@ c_common_init (void) +@@ -1034,6 +1043,47 @@ c_common_init (void) return false; } @@ -99,7 +89,7 @@ --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt -@@ -391,6 +391,10 @@ Wfloat-conversion +@@ -431,6 +431,10 @@ Wfloat-conversion C ObjC C++ ObjC++ Var(warn_float_conversion) LangEnabledBy(C ObjC C++ ObjC++,Wconversion) Warn for implicit type conversions that cause loss of floating point precision @@ -110,7 +100,7 @@ Wfloat-equal C ObjC C++ ObjC++ Var(warn_float_equal) Warning Warn if testing floating point numbers for equality -@@ -972,6 +976,9 @@ C++ ObjC++ Optimization Alias(fexception +@@ -1161,6 +1165,9 @@ C++ ObjC++ Optimization Alias(fexception fhonor-std C++ ObjC++ Ignore Warn(switch %qs is no longer supported) @@ -122,7 +112,7 @@ Assume normal C execution environment --- a/gcc/common.opt +++ b/gcc/common.opt -@@ -549,6 +549,10 @@ Werror= +@@ -561,6 +561,10 @@ Werror= Common Joined Treat specified warning as error @@ -133,7 +123,7 @@ Wextra Common Var(extra_warnings) Warning Print extra (possibly unwanted) warnings -@@ -1287,6 +1291,9 @@ fguess-branch-probability +@@ -1360,6 +1364,9 @@ fguess-branch-probability Common Report Var(flag_guess_branch_prob) Optimization Enable guessing of branch probabilities @@ -145,7 +135,7 @@ ; On SVR4 targets, it also controls whether or not to emit a --- a/gcc/opts.c +++ b/gcc/opts.c -@@ -1572,6 +1572,17 @@ common_handle_option (struct gcc_options +@@ -1699,6 +1699,17 @@ common_handle_option (struct gcc_options opts, opts_set, loc, dc); break; @@ -179,16 +169,16 @@ Issue warnings for code in system headers. These are normally unhelpful --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi -@@ -243,7 +243,7 @@ Objective-C and Objective-C++ Dialects}. - -Wconversion -Wcoverage-mismatch -Wdate-time -Wdelete-incomplete -Wno-cpp @gol - -Wno-deprecated -Wno-deprecated-declarations -Wdisabled-optimization @gol +@@ -251,7 +251,7 @@ Objective-C and Objective-C++ Dialects}. + -Wdisabled-optimization @gol + -Wno-discarded-qualifiers -Wno-discarded-array-qualifiers @gol -Wno-div-by-zero -Wdouble-promotion -Wempty-body -Wenum-compare @gol --Wno-endif-labels -Werror -Werror=* @gol +-Wno-endif-labels -Werror -Werror=* -Werror-maybe-reset @gol -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 + -Wformat-security -Wformat-signedness -Wformat-y2k @gol +@@ -5371,6 +5371,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 +201,7 @@ @item -Wstack-protector @opindex Wstack-protector @opindex Wno-stack-protector -@@ -7194,7 +7210,7 @@ so, the first branch is redirected to ei +@@ -7844,7 +7860,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. @@ -222,7 +212,7 @@ @opindex fsplit-wide-types --- a/gcc/java/jvspec.c +++ b/gcc/java/jvspec.c -@@ -626,6 +626,7 @@ lang_specific_pre_link (void) +@@ -629,6 +629,7 @@ lang_specific_pre_link (void) class name. Append dummy `.c' that can be stripped by set_input so %b is correct. */ set_input (concat (main_class_name, "main.c", NULL)); Modified: trunk/toolchain/gcc/patches/5.2.0/920-specs_nonfatal_getenv.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/920-specs_nonfatal_getenv.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/920-specs_nonfatal_getenv.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,12 +1,13 @@ --- a/gcc/gcc.c +++ b/gcc/gcc.c -@@ -8105,7 +8105,10 @@ getenv_spec_function (int argc, const ch +@@ -8807,8 +8807,10 @@ getenv_spec_function (int argc, const ch value = getenv (argv[0]); if (!value) -- fatal_error ("environment variable %qs not defined", argv[0]); +- fatal_error (input_location, +- "environment variable %qs not defined", argv[0]); + { -+ warning (0, "environment variable %qs not defined", argv[0]); ++ warning (input_location, "environment variable %qs not defined", argv[0]); + value = ""; + } Modified: trunk/toolchain/gcc/patches/5.2.0/930-fix-mips-noexecstack.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/930-fix-mips-noexecstack.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/930-fix-mips-noexecstack.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -48,9 +48,9 @@ --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c -@@ -19142,6 +19142,9 @@ mips_atomic_assign_expand_fenv (tree *ho - #define TARGET_USE_BY_PIECES_INFRASTRUCTURE_P \ - mips_use_by_pieces_infrastructure_p +@@ -19621,6 +19621,9 @@ mips_lra_p (void) + #undef TARGET_LRA_P + #define TARGET_LRA_P mips_lra_p +#undef TARGET_ASM_FILE_END +#define TARGET_ASM_FILE_END file_end_indicate_exec_stack @@ -85,7 +85,7 @@ --- a/libgcc/config/mips/mips16.S +++ b/libgcc/config/mips/mips16.S -@@ -35,6 +35,10 @@ see the files COPYING3 and COPYING.RUNTI +@@ -48,6 +48,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. */ Modified: trunk/toolchain/gcc/patches/5.2.0/940-no-clobber-stamp-bits.patch =================================================================== --- trunk/toolchain/gcc/patches/4.9-linaro/940-no-clobber-stamp-bits.patch 2015-08-15 17:16:03 UTC (rev 46609) +++ trunk/toolchain/gcc/patches/5.2.0/940-no-clobber-stamp-bits.patch 2015-08-16 20:20:36 UTC (rev 46611) @@ -1,6 +1,6 @@ --- a/libstdc++-v3/include/Makefile.in +++ b/libstdc++-v3/include/Makefile.in -@@ -1366,7 +1366,7 @@ stamp-bits: ${bits_headers} +@@ -1382,7 +1382,7 @@ stamp-bits: ${bits_headers} @$(STAMP) stamp-bits stamp-bits-sup: stamp-bits ${bits_sup_headers} _______________________________________________ openwrt-commits mailing list [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-commits
