diff options
Diffstat (limited to 'packages/gcc-linaro/6.4-2017.11')
30 files changed, 0 insertions, 3591 deletions
diff --git a/packages/gcc-linaro/6.4-2017.11/0000-libtool-leave-framework-alone.patch b/packages/gcc-linaro/6.4-2017.11/0000-libtool-leave-framework-alone.patch deleted file mode 100644 index 1a86e41..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0000-libtool-leave-framework-alone.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - libtool-ldflags | 5 +++++ - 1 file changed, 5 insertions(+) - ---- a/libtool-ldflags -+++ b/libtool-ldflags -@@ -36,6 +36,11 @@ - for arg - do - case $arg in -+ -framework) -+ # libtool handles this option. It should not be prefixed with -+ # -Xcompiler, as that would split it from the argument that -+ # follows. -+ ;; - -f*|--*|-static-lib*|-shared-lib*|-B*) - # Libtool does not ascribe any special meaning options - # that begin with -f or with a double-dash. So, it will diff --git a/packages/gcc-linaro/6.4-2017.11/0001-uclibc-conf.patch b/packages/gcc-linaro/6.4-2017.11/0001-uclibc-conf.patch deleted file mode 100644 index aef750a..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0001-uclibc-conf.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - contrib/regression/objs-gcc.sh | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/contrib/regression/objs-gcc.sh -+++ b/contrib/regression/objs-gcc.sh -@@ -106,6 +106,10 @@ - then - make all-gdb all-dejagnu all-ld || exit 1 - make install-gdb install-dejagnu install-ld || exit 1 -+elif [ $H_REAL_TARGET = $H_REAL_HOST -a $H_REAL_TARGET = i686-pc-linux-uclibc ] -+ then -+ make all-gdb all-dejagnu all-ld || exit 1 -+ make install-gdb install-dejagnu install-ld || exit 1 - elif [ $H_REAL_TARGET = $H_REAL_HOST ] ; then - make bootstrap || exit 1 - make install || exit 1 diff --git a/packages/gcc-linaro/6.4-2017.11/0002-missing-execinfo_h.patch b/packages/gcc-linaro/6.4-2017.11/0002-missing-execinfo_h.patch deleted file mode 100644 index c90222a..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0002-missing-execinfo_h.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - boehm-gc/include/gc.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/boehm-gc/include/gc.h -+++ b/boehm-gc/include/gc.h -@@ -503,7 +503,7 @@ - #if defined(__linux__) || defined(__GLIBC__) - # include <features.h> - # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \ -- && !defined(__ia64__) -+ && !defined(__ia64__) && !defined(__UCLIBC__) - # ifndef GC_HAVE_BUILTIN_BACKTRACE - # define GC_HAVE_BUILTIN_BACKTRACE - # endif diff --git a/packages/gcc-linaro/6.4-2017.11/0003-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch b/packages/gcc-linaro/6.4-2017.11/0003-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch deleted file mode 100644 index fe0f146..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0003-gcc-plugin-Win-Dont-need-undefined-extern-var-refs-nor-fpic.patch +++ /dev/null @@ -1,163 +0,0 @@ ---- - config/gcc-plugin.m4 | 18 +++++++++++++----- - gcc/configure | 22 +++++++++++++++------- - libcc1/configure | 22 +++++++++++++++------- - 3 files changed, 43 insertions(+), 19 deletions(-) - ---- a/config/gcc-plugin.m4 -+++ b/config/gcc-plugin.m4 -@@ -20,6 +20,9 @@ - - pluginlibs= - -+ PICFLAG="-fPIC" -+ UNDEFINEDPREAMBLE="extern int X;" -+ UNDEFINEDCODE="return X == 0;" - case "${host}" in - *-*-darwin*) - if test x$build = x$host; then -@@ -30,6 +33,11 @@ - export_sym_check= - fi - ;; -+ *-*-mingw*|*-*-cygwin*|*-*-msys*) -+ PICFLAG="" -+ UNDEFINEDPREAMBLE="" -+ UNDEFINEDCODE="" -+ ;; - *) - if test x$build = x$host; then - export_sym_check="objdump${exeext} -T" -@@ -81,17 +89,17 @@ - case "${host}" in - *-*-darwin*) - CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` -- CFLAGS="$CFLAGS -fPIC" -+ CFLAGS="$CFLAGS ${PICFLAG}" - LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" - ;; - *) -- CFLAGS="$CFLAGS -fPIC" -- LDFLAGS="$LDFLAGS -fPIC -shared" -+ CFLAGS="$CFLAGS ${PICFLAG}" -+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" - ;; - esac -- AC_MSG_CHECKING([for -fPIC -shared]) -+ AC_MSG_CHECKING([for ${PICFLAG} -shared]) - AC_TRY_LINK( -- [extern int X;],[return X == 0;], -+ [${UNDEFINEDPREAMBLE}],[${UNDEFINEDCODE}], - [AC_MSG_RESULT([yes]); have_pic_shared=yes], - [AC_MSG_RESULT([no]); have_pic_shared=no]) - if test x"$have_pic_shared" != x"yes" -o x"$ac_cv_search_dlopen" = x"no"; then ---- a/gcc/configure -+++ b/gcc/configure -@@ -29200,6 +29200,9 @@ - - pluginlibs= - -+ PICFLAG="-fPIC" -+ UNDEFINEDPREAMBLE="extern int X;" -+ UNDEFINEDCODE="return X == 0;" - case "${host}" in - *-*-darwin*) - if test x$build = x$host; then -@@ -29210,6 +29213,11 @@ - export_sym_check= - fi - ;; -+ *-*-mingw*|*-*-cygwin*|*-*-msys*) -+ PICFLAG="" -+ UNDEFINEDPREAMBLE="" -+ UNDEFINEDCODE="" -+ ;; - *) - if test x$build = x$host; then - export_sym_check="objdump${exeext} -T" -@@ -29322,23 +29330,23 @@ - case "${host}" in - *-*-darwin*) - CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` -- CFLAGS="$CFLAGS -fPIC" -+ CFLAGS="$CFLAGS ${PICFLAG}" - LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" - ;; - *) -- CFLAGS="$CFLAGS -fPIC" -- LDFLAGS="$LDFLAGS -fPIC -shared" -+ CFLAGS="$CFLAGS ${PICFLAG}" -+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" - ;; - esac -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fPIC -shared" >&5 --$as_echo_n "checking for -fPIC -shared... " >&6; } -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${PICFLAG} -shared" >&5 -+$as_echo_n "checking for ${PICFLAG} -shared... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --extern int X; -+${UNDEFINEDPREAMBLE} - int - main () - { --return X == 0; -+${UNDEFINEDCODE} - ; - return 0; - } ---- a/libcc1/configure -+++ b/libcc1/configure -@@ -14531,6 +14531,9 @@ - - pluginlibs= - -+ PICFLAG="-fPIC" -+ UNDEFINEDPREAMBLE="extern int X;" -+ UNDEFINEDCODE="return X == 0;" - case "${host}" in - *-*-darwin*) - if test x$build = x$host; then -@@ -14541,6 +14544,11 @@ - export_sym_check= - fi - ;; -+ *-*-mingw*|*-*-cygwin*|*-*-msys*) -+ PICFLAG="" -+ UNDEFINEDPREAMBLE="" -+ UNDEFINEDCODE="" -+ ;; - *) - if test x$build = x$host; then - export_sym_check="objdump${exeext} -T" -@@ -14653,23 +14661,23 @@ - case "${host}" in - *-*-darwin*) - CFLAGS=`echo $CFLAGS | sed s/-mdynamic-no-pic//g` -- CFLAGS="$CFLAGS -fPIC" -+ CFLAGS="$CFLAGS ${PICFLAG}" - LDFLAGS="$LDFLAGS -shared -undefined dynamic_lookup" - ;; - *) -- CFLAGS="$CFLAGS -fPIC" -- LDFLAGS="$LDFLAGS -fPIC -shared" -+ CFLAGS="$CFLAGS ${PICFLAG}" -+ LDFLAGS="$LDFLAGS ${PICFLAG} -shared" - ;; - esac -- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -fPIC -shared" >&5 --$as_echo_n "checking for -fPIC -shared... " >&6; } -+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${PICFLAG} -shared" >&5 -+$as_echo_n "checking for ${PICFLAG} -shared... " >&6; } - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --extern int X; -+${UNDEFINEDPREAMBLE} - int - main () - { --return X == 0; -+${UNDEFINEDCODE} - ; - return 0; - } diff --git a/packages/gcc-linaro/6.4-2017.11/0004-gcc-plugin-POSIX-include-sys-select-h.patch b/packages/gcc-linaro/6.4-2017.11/0004-gcc-plugin-POSIX-include-sys-select-h.patch deleted file mode 100644 index 5f9a07a..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0004-gcc-plugin-POSIX-include-sys-select-h.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- - libcc1/connection.cc | 1 + - 1 file changed, 1 insertion(+) - ---- a/libcc1/connection.cc -+++ b/libcc1/connection.cc -@@ -21,6 +21,7 @@ - #include <string> - #include <unistd.h> - #include <sys/types.h> -+#include <sys/select.h> - #include <string.h> - #include <errno.h> - #include "marshall.hh" diff --git a/packages/gcc-linaro/6.4-2017.11/0005-arm-softfloat-libgcc.patch b/packages/gcc-linaro/6.4-2017.11/0005-arm-softfloat-libgcc.patch deleted file mode 100644 index 350857d..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0005-arm-softfloat-libgcc.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- - gcc/config/arm/linux-elf.h | 2 +- - libgcc/config/arm/t-linux | 7 ++++++- - 2 files changed, 7 insertions(+), 2 deletions(-) - ---- a/gcc/config/arm/linux-elf.h -+++ b/gcc/config/arm/linux-elf.h -@@ -60,7 +60,7 @@ - %{shared:-lc} \ - %{!shared:%{profile:-lc_p}%{!profile:-lc}}" - --#define LIBGCC_SPEC "%{mfloat-abi=soft*:-lfloat} -lgcc" -+#define LIBGCC_SPEC "-lgcc" - - #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2" - ---- a/libgcc/config/arm/t-linux -+++ b/libgcc/config/arm/t-linux -@@ -1,6 +1,11 @@ - LIB1ASMSRC = arm/lib1funcs.S - LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx _clzsi2 _clzdi2 \ -- _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 -+ _ctzsi2 _arm_addsubdf3 _arm_addsubsf3 \ -+ _arm_addsubdf3 _arm_addsubsf3 \ -+ _arm_negdf2 _arm_muldivdf3 _arm_cmpdf2 _arm_unorddf2 \ -+ _arm_fixdfsi _arm_fixunsdfsi _arm_truncdfsf2 \ -+ _arm_negsf2 _arm_muldivsf3 _arm_cmpsf2 _arm_unordsf2 \ -+ _arm_fixsfsi _arm_fixunssfsi - - # Just for these, we omit the frame pointer since it makes such a big - # difference. diff --git a/packages/gcc-linaro/6.4-2017.11/0006-arm_unbreak_armv4t.patch b/packages/gcc-linaro/6.4-2017.11/0006-arm_unbreak_armv4t.patch deleted file mode 100644 index 7c37445..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0006-arm_unbreak_armv4t.patch +++ /dev/null @@ -1,17 +0,0 @@ -http://sourceware.org/ml/crossgcc/2008-05/msg00009.html - ---- - gcc/config/arm/linux-eabi.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -45,7 +45,7 @@ - The ARM10TDMI core is the default for armv5t, so set - SUBTARGET_CPU_DEFAULT to achieve this. */ - #undef SUBTARGET_CPU_DEFAULT --#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm10tdmi -+#define SUBTARGET_CPU_DEFAULT TARGET_CPU_arm9tdmi - - /* TARGET_BIG_ENDIAN_DEFAULT is set in - config.gcc for big endian configurations. */ diff --git a/packages/gcc-linaro/6.4-2017.11/0007-cilk-wchar.patch b/packages/gcc-linaro/6.4-2017.11/0007-cilk-wchar.patch deleted file mode 100644 index 300837f..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0007-cilk-wchar.patch +++ /dev/null @@ -1,54 +0,0 @@ -[PATCH] cilk: fix build without wchar - -When building against uClibc with wchar support disabled, WCHAR_MIN and -WCHAR_MAX are not defined leading to compilation errors. - -Fix it by only including the wchar code if available. - -Signed-off-by: Peter Korsgaard <peter@korsgaard.com> ---- - libcilkrts/include/cilk/reducer_min_max.h | 8 ++++++++ - 1 file changed, 8 insertions(+) - ---- a/libcilkrts/include/cilk/reducer_min_max.h -+++ b/libcilkrts/include/cilk/reducer_min_max.h -@@ -3154,7 +3154,9 @@ - CILK_C_REDUCER_MAX_INSTANCE(char, char, CHAR_MIN) - CILK_C_REDUCER_MAX_INSTANCE(unsigned char, uchar, 0) - CILK_C_REDUCER_MAX_INSTANCE(signed char, schar, SCHAR_MIN) -+#ifdef WCHAR_MIN - CILK_C_REDUCER_MAX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) -+#endif - CILK_C_REDUCER_MAX_INSTANCE(short, short, SHRT_MIN) - CILK_C_REDUCER_MAX_INSTANCE(unsigned short, ushort, 0) - CILK_C_REDUCER_MAX_INSTANCE(int, int, INT_MIN) -@@ -3306,7 +3308,9 @@ - CILK_C_REDUCER_MAX_INDEX_INSTANCE(char, char, CHAR_MIN) - CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned char, uchar, 0) - CILK_C_REDUCER_MAX_INDEX_INSTANCE(signed char, schar, SCHAR_MIN) -+#ifdef WCHAR_MIN - CILK_C_REDUCER_MAX_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MIN) -+#endif - CILK_C_REDUCER_MAX_INDEX_INSTANCE(short, short, SHRT_MIN) - CILK_C_REDUCER_MAX_INDEX_INSTANCE(unsigned short, ushort, 0) - CILK_C_REDUCER_MAX_INDEX_INSTANCE(int, int, INT_MIN) -@@ -3432,7 +3436,9 @@ - CILK_C_REDUCER_MIN_INSTANCE(char, char, CHAR_MAX) - CILK_C_REDUCER_MIN_INSTANCE(unsigned char, uchar, CHAR_MAX) - CILK_C_REDUCER_MIN_INSTANCE(signed char, schar, SCHAR_MAX) -+#ifdef WCHAR_MAX - CILK_C_REDUCER_MIN_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) -+#endif - CILK_C_REDUCER_MIN_INSTANCE(short, short, SHRT_MAX) - CILK_C_REDUCER_MIN_INSTANCE(unsigned short, ushort, USHRT_MAX) - CILK_C_REDUCER_MIN_INSTANCE(int, int, INT_MAX) -@@ -3584,7 +3590,9 @@ - CILK_C_REDUCER_MIN_INDEX_INSTANCE(char, char, CHAR_MAX) - CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned char, uchar, CHAR_MAX) - CILK_C_REDUCER_MIN_INDEX_INSTANCE(signed char, schar, SCHAR_MAX) -+#ifdef WCHAR_MAX - CILK_C_REDUCER_MIN_INDEX_INSTANCE(wchar_t, wchar_t, WCHAR_MAX) -+#endif - CILK_C_REDUCER_MIN_INDEX_INSTANCE(short, short, SHRT_MAX) - CILK_C_REDUCER_MIN_INDEX_INSTANCE(unsigned short, ushort, USHRT_MAX) - CILK_C_REDUCER_MIN_INDEX_INSTANCE(int, int, INT_MAX) diff --git a/packages/gcc-linaro/6.4-2017.11/0008-fix-m68k-compile.patch b/packages/gcc-linaro/6.4-2017.11/0008-fix-m68k-compile.patch deleted file mode 100644 index 9437f25..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0008-fix-m68k-compile.patch +++ /dev/null @@ -1,18 +0,0 @@ -remove unused header, which breaks the toolchain building - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> - ---- - libgcc/config/m68k/linux-atomic.c | 1 - - 1 file changed, 1 deletion(-) - ---- a/libgcc/config/m68k/linux-atomic.c -+++ b/libgcc/config/m68k/linux-atomic.c -@@ -33,7 +33,6 @@ - using the kernel helper defined below. There is no support for - 64-bit operations yet. */ - --#include <asm/unistd.h> - #include <stdbool.h> - - #ifndef __NR_atomic_cmpxchg_32 diff --git a/packages/gcc-linaro/6.4-2017.11/0009-fix-m68k-uclinux.patch b/packages/gcc-linaro/6.4-2017.11/0009-fix-m68k-uclinux.patch deleted file mode 100644 index 20d7c4a..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0009-fix-m68k-uclinux.patch +++ /dev/null @@ -1,21 +0,0 @@ -avoids internal compiler error while compiling linux-atomic.c -See here: -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53833 - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> - ---- - libgcc/config.host | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/libgcc/config.host -+++ b/libgcc/config.host -@@ -824,7 +824,7 @@ - m68k*-*-openbsd*) - ;; - m68k-*-uclinux*) # Motorola m68k/ColdFire running uClinux with uClibc -- tmake_file="$tmake_file m68k/t-floatlib m68k/t-linux" -+ tmake_file="$tmake_file m68k/t-floatlib" - md_unwind_header=m68k/linux-unwind.h - ;; - m68k-*-linux*) # Motorola m68k's running GNU/Linux diff --git a/packages/gcc-linaro/6.4-2017.11/0010-libgcc-mkmap-symver-support-skip_underscore.patch b/packages/gcc-linaro/6.4-2017.11/0010-libgcc-mkmap-symver-support-skip_underscore.patch deleted file mode 100644 index c6421d0..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0010-libgcc-mkmap-symver-support-skip_underscore.patch +++ /dev/null @@ -1,55 +0,0 @@ -From ae9c3e354440c4a0f105a9eabfb2f77be085ebc1 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> -Date: Thu, 18 Aug 2016 17:59:16 +0200 -Subject: [PATCH] libgcc/mkmap-symver: support skip_underscore - -Some platforms, such as Blackfin, have a special prefix for assembly -symbols as opposed to C symbols. For this reason, a function named -"foo()" in C will in fact be visible as a symbol called "_foo" in the -ELF binary. - -The current linker version script logic in libgcc doesn't take into -account this situation properly. The Blackfin specific -libgcc/config/bfin/libgcc-glibc.ver has an additional "_" in front of -every symbol so that it matches the output of "nm" (which gets parsed to -produce the final linker version script). But due to this additional -"_", ld no longer matches with the symbols since "ld" does the matching -with the original symbol name, not the one prefixed with "_". - -Due to this, none of the symbols in libgcc/config/bfin/libgcc-glibc.ver -are actually matched with symbols in libgcc. This causes all libgcc -symbols to be left as "LOCAL", which causes lots of "undefined -reference" whenever some C or C++ code that calls a function of libgcc -is compiled. - -To address this, this commit introduces a "skip_underscore" variable to -the mkmap-symver script. It tells mkmap-symver to ignore the leading -underscore from the "nm" output. - -Note that this new argument is different from the existing -"leading_underscore" argument, which *adds* an additional underscore to -the generated linker version script. - -Having this functionality paves the way to using the generic linker -version information for Blackfin, instead of using a custom one. - -Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> ---- - libgcc/mkmap-symver.awk | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - ---- a/libgcc/mkmap-symver.awk -+++ b/libgcc/mkmap-symver.awk -@@ -47,7 +47,11 @@ - - state == "nm" && NF == 3 { - split ($3, s, "@") -- def[s[1]] = 1; -+ if (skip_underscore) -+ symname = substr(s[1], 2); -+ else -+ symname = s[1]; -+ def[symname] = 1; - sawsymbol = 1; - next; - } diff --git a/packages/gcc-linaro/6.4-2017.11/0011-libgcc-config-bfin-use-the-generic-linker-version-in.patch b/packages/gcc-linaro/6.4-2017.11/0011-libgcc-config-bfin-use-the-generic-linker-version-in.patch deleted file mode 100644 index ac75cfa..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0011-libgcc-config-bfin-use-the-generic-linker-version-in.patch +++ /dev/null @@ -1,1937 +0,0 @@ -From 56d606931716de30a89a40dc69a9282c1b4e2880 Mon Sep 17 00:00:00 2001 -From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> -Date: Thu, 18 Aug 2016 18:04:06 +0200 -Subject: [PATCH] libgcc/config/bfin: use the generic linker version - information - -This commit makes the Blackfin platform use the generic linker version -information, rather than a completely duplicated file, specific for the -Blackfin architecture. - -This is made possible using the newly introduced skip_underscore -variable of the mkmap-symver script. - -This also allows to get a correct linker version file, with symbol names -matching the ones found in libgcc. Thanks to this, the necessary symbols -are marked "GLOBAL" instead of "LOCAL", which makes them visible at link -time, and solves a large number of "undefined reference" -issues. Indeed, the Blackfin specific linker version script had an extra -underscore in front of all symbols, which meant none of them matched the -symbols in libgcc, and therefore all libgcc symbols were marked as -"LOCAL", making them invisible for linking. - -Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> ---- - libgcc/config/bfin/libgcc-glibc.ver | 1894 ------------------------------------ - libgcc/config/bfin/t-linux | 3 - 2 files changed, 4 insertions(+), 1893 deletions(-) - ---- a/libgcc/config/bfin/libgcc-glibc.ver -+++ b/libgcc/config/bfin/libgcc-glibc.ver -@@ -16,1898 +16,8 @@ - # along with GCC; see the file COPYING3. If not see - # <http://www.gnu.org/licenses/>. - --GCC_3.0 { -- # libgcc1 integer symbols -- ___absvsi2 -- ___addvsi3 -- ___ashlsi3 -- ___ashrsi3 -- ___divsi3 -- ___lshrsi3 -- ___modsi3 -- ___mulsi3 -- ___mulvsi3 -- ___negvsi2 -- ___subvsi3 -- ___udivsi3 -- ___umodsi3 -- -- # libgcc1 floating point symbols -- ___addsf3 -- ___adddf3 -- ___addxf3 -- ___addtf3 -- ___divsf3 -- ___divdf3 -- ___divxf3 -- ___divtf3 -- ___eqsf2 -- ___eqdf2 -- ___eqxf2 -- ___eqtf2 -- ___extenddfxf2 -- ___extenddftf2 -- ___extendsfdf2 -- ___extendsfxf2 -- ___extendsftf2 -- ___fixsfsi -- ___fixdfsi -- ___fixxfsi -- ___fixtfsi -- ___floatsisf -- ___floatsidf -- ___floatsixf -- ___floatsitf -- ___gesf2 -- ___gedf2 -- ___gexf2 -- ___getf2 -- ___gtsf2 -- ___gtdf2 -- ___gtxf2 -- ___gttf2 -- ___lesf2 -- ___ledf2 -- ___lexf2 -- ___letf2 -- ___ltsf2 -- ___ltdf2 -- ___ltxf2 -- ___lttf2 -- ___mulsf3 -- ___muldf3 -- ___mulxf3 -- ___multf3 -- ___negsf2 -- ___negdf2 -- ___negxf2 -- ___negtf2 -- ___nesf2 -- ___nedf2 -- ___nexf2 -- ___netf2 -- ___subsf3 -- ___subdf3 -- ___subxf3 -- ___subtf3 -- ___truncdfsf2 -- ___truncxfsf2 -- ___trunctfsf2 -- ___truncxfdf2 -- ___trunctfdf2 -- -- # libgcc2 DImode arithmetic (for 32-bit targets). -- ___absvdi2 -- ___addvdi3 -- ___ashldi3 -- ___ashrdi3 -- ___cmpdi2 -- ___divdi3 -- ___ffsdi2 -- ___fixdfdi -- ___fixsfdi -- ___fixtfdi -- ___fixxfdi -- ___fixunsdfdi -- ___fixunsdfsi -- ___fixunssfsi -- ___fixunssfdi -- ___fixunstfdi -- ___fixunstfsi -- ___fixunsxfdi -- ___fixunsxfsi -- ___floatdidf -- ___floatdisf -- ___floatdixf -- ___floatditf -- ___lshrdi3 -- ___moddi3 -- ___muldi3 -- ___mulvdi3 -- ___negdi2 -- ___negvdi2 -- ___subvdi3 -- ___ucmpdi2 -- ___udivdi3 -- ___udivmoddi4 -- ___umoddi3 -- -- # libgcc2 TImode arithmetic (for 64-bit targets). -- ___ashlti3 -- ___ashrti3 -- ___cmpti2 -- ___divti3 -- ___ffsti2 -- ___fixdfti -- ___fixsfti -- ___fixtfti -- ___fixxfti -- ___lshrti3 -- ___modti3 -- ___multi3 -- ___negti2 -- ___ucmpti2 -- ___udivmodti4 -- ___udivti3 -- ___umodti3 -- ___fixunsdfti -- ___fixunssfti -- ___fixunstfti -- ___fixunsxfti -- ___floattidf -- ___floattisf -- ___floattixf -- ___floattitf -- -- # Used to deal with trampoline initialization on some platforms -- ___clear_cache -- -- # EH symbols -- __Unwind_DeleteException -- __Unwind_Find_FDE -- __Unwind_ForcedUnwind -- __Unwind_GetGR -- __Unwind_GetIP -- __Unwind_GetLanguageSpecificData -- __Unwind_GetRegionStart -- __Unwind_GetTextRelBase -- __Unwind_GetDataRelBase -- __Unwind_RaiseException -- __Unwind_Resume -- __Unwind_SetGR -- __Unwind_SetIP -- ___deregister_frame -- ___deregister_frame_info -- ___deregister_frame_info_bases -- ___register_frame -- ___register_frame_info -- ___register_frame_info_bases -- ___register_frame_info_table -- ___register_frame_info_table_bases -- ___register_frame_table -- -- # SjLj EH symbols -- __Unwind_SjLj_Register -- __Unwind_SjLj_Unregister -- __Unwind_SjLj_RaiseException -- __Unwind_SjLj_ForcedUnwind -- __Unwind_SjLj_Resume --} -- --%inherit GCC_3.3 GCC_3.0 --GCC_3.3 { -- __Unwind_FindEnclosingFunction -- __Unwind_GetCFA -- __Unwind_Backtrace -- __Unwind_Resume_or_Rethrow -- __Unwind_SjLj_Resume_or_Rethrow --} -- --%inherit GCC_3.3.1 GCC_3.3 --GCC_3.3.1 { -- ___gcc_personality_sj0 -- ___gcc_personality_v0 --} -- --%inherit GCC_3.3.2 GCC_3.3.1 --GCC_3.3.2 { --} --%inherit GCC_3.3.4 GCC_3.3.2 --GCC_3.3.4 { -- ___unorddf2 -- ___unordsf2 --} -- --%inherit GCC_3.4 GCC_3.3.4 --GCC_3.4 { -- # bit scanning and counting built-ins -- ___clzsi2 -- ___clzdi2 -- ___clzti2 -- ___ctzsi2 -- ___ctzdi2 -- ___ctzti2 -- ___popcountsi2 -- ___popcountdi2 -- ___popcountti2 -- ___paritysi2 -- ___paritydi2 -- ___parityti2 --} -- --%inherit GCC_3.4.2 GCC_3.4 --GCC_3.4.2 { -- # Used to deal with trampoline initialization on some platforms -- ___enable_execute_stack -- ___trampoline_setup --} -- --%inherit GCC_3.4.4 GCC_3.4.2 --GCC_3.4.4 { -- # libgcc2 TImode arithmetic (for 64-bit targets). -- ___absvti2 -- ___addvti3 -- ___mulvti3 -- ___negvti2 -- ___subvti3 --} -- --%inherit GCC_4.0.0 GCC_3.4.4 --GCC_4.0.0 { -- # libgcc2 __builtin_powi helpers. -- ___powisf2 -- ___powidf2 -- ___powixf2 -- ___powitf2 -- -- # c99 compliant complex arithmetic -- ___divsc3 -- ___divdc3 -- ___divxc3 -- ___divtc3 -- ___mulsc3 -- ___muldc3 -- ___mulxc3 -- ___multc3 --} -- - %inherit GCC_4.1.0 GCC_4.0.0 - GCC_4.1.0 { -- ___smulsi3_highpart -- ___umulsi3_highpart --} -- --%inherit GCC_4.2.0 GCC_4.1.0 --GCC_4.2.0 { -- # unsigned-to-floating conversions -- ___floatunsisf -- ___floatunsidf -- ___floatunsixf -- ___floatunsitf -- ___floatundidf -- ___floatundisf -- ___floatundixf -- ___floatunditf -- ___floatuntidf -- ___floatuntisf -- ___floatuntixf -- ___floatuntitf -- __Unwind_GetIPInfo --} -- --%inherit GCC_4.3.0 GCC_4.2.0 --GCC_4.3.0 { -- # byte swapping routines -- ___bswapsi2 -- ___bswapdi2 -- ___emutls_get_address -- ___emutls_register_common -- ___ffssi2 -- ___extendxftf2 -- ___trunctfxf2 -- -- # fixed-point routines -- ___addqq3 -- ___addhq3 -- ___addsq3 -- ___adddq3 -- ___addtq3 -- ___adduqq3 -- ___adduhq3 -- ___addusq3 -- ___addudq3 -- ___addutq3 -- ___addha3 -- ___addsa3 -- ___addda3 -- ___addta3 -- ___adduha3 -- ___addusa3 -- ___adduda3 -- ___adduta3 -- ___ssaddqq3 -- ___ssaddhq3 -- ___ssaddsq3 -- ___ssadddq3 -- ___ssaddtq3 -- ___ssaddha3 -- ___ssaddsa3 -- ___ssaddda3 -- ___ssaddta3 -- ___usadduqq3 -- ___usadduhq3 -- ___usaddusq3 -- ___usaddudq3 -- ___usaddutq3 -- ___usadduha3 -- ___usaddusa3 -- ___usadduda3 -- ___usadduta3 -- ___subqq3 -- ___subhq3 -- ___subsq3 -- ___subdq3 -- ___subtq3 -- ___subuqq3 -- ___subuhq3 -- ___subusq3 -- ___subudq3 -- ___subutq3 -- ___subha3 -- ___subsa3 -- ___subda3 -- ___subta3 -- ___subuha3 -- ___subusa3 -- ___subuda3 -- ___subuta3 -- ___sssubqq3 -- ___sssubhq3 -- ___sssubsq3 -- ___sssubdq3 -- ___sssubtq3 -- ___sssubha3 -- ___sssubsa3 -- ___sssubda3 -- ___sssubta3 -- ___ussubuqq3 -- ___ussubuhq3 -- ___ussubusq3 -- ___ussubudq3 -- ___ussubutq3 -- ___ussubuha3 -- ___ussubusa3 -- ___ussubuda3 -- ___ussubuta3 -- ___mulqq3 -- ___mulhq3 -- ___mulsq3 -- ___muldq3 -- ___multq3 -- ___muluqq3 -- ___muluhq3 -- ___mulusq3 -- ___muludq3 -- ___mulutq3 -- ___mulha3 -- ___mulsa3 -- ___mulda3 -- ___multa3 -- ___muluha3 -- ___mulusa3 -- ___muluda3 -- ___muluta3 -- ___ssmulqq3 -- ___ssmulhq3 -- ___ssmulsq3 -- ___ssmuldq3 -- ___ssmultq3 -- ___ssmulha3 -- ___ssmulsa3 -- ___ssmulda3 -- ___ssmulta3 -- ___usmuluqq3 -- ___usmuluhq3 -- ___usmulusq3 -- ___usmuludq3 -- ___usmulutq3 -- ___usmuluha3 -- ___usmulusa3 -- ___usmuluda3 -- ___usmuluta3 -- ___divqq3 -- ___divhq3 -- ___divsq3 -- ___divdq3 -- ___divtq3 -- ___divha3 -- ___divsa3 -- ___divda3 -- ___divta3 -- ___udivuqq3 -- ___udivuhq3 -- ___udivusq3 -- ___udivudq3 -- ___udivutq3 -- ___udivuha3 -- ___udivusa3 -- ___udivuda3 -- ___udivuta3 -- ___ssdivqq3 -- ___ssdivhq3 -- ___ssdivsq3 -- ___ssdivdq3 -- ___ssdivtq3 -- ___ssdivha3 -- ___ssdivsa3 -- ___ssdivda3 -- ___ssdivta3 -- ___usdivuqq3 -- ___usdivuhq3 -- ___usdivusq3 -- ___usdivudq3 -- ___usdivutq3 -- ___usdivuha3 -- ___usdivusa3 -- ___usdivuda3 -- ___usdivuta3 -- ___negqq2 -- ___neghq2 -- ___negsq2 -- ___negdq2 -- ___negtq2 -- ___neguqq2 -- ___neguhq2 -- ___negusq2 -- ___negudq2 -- ___negutq2 -- ___negha2 -- ___negsa2 -- ___negda2 -- ___negta2 -- ___neguha2 -- ___negusa2 -- ___neguda2 -- ___neguta2 -- ___ssnegqq2 -- ___ssneghq2 -- ___ssnegsq2 -- ___ssnegdq2 -- ___ssnegtq2 -- ___ssnegha2 -- ___ssnegsa2 -- ___ssnegda2 -- ___ssnegta2 -- ___usneguqq2 -- ___usneguhq2 -- ___usnegusq2 -- ___usnegudq2 -- ___usnegutq2 -- ___usneguha2 -- ___usnegusa2 -- ___usneguda2 -- ___usneguta2 -- ___ashlqq3 -- ___ashlhq3 -- ___ashlsq3 -- ___ashldq3 -- ___ashltq3 -- ___ashluqq3 -- ___ashluhq3 -- ___ashlusq3 -- ___ashludq3 -- ___ashlutq3 -- ___ashlha3 -- ___ashlsa3 -- ___ashlda3 -- ___ashlta3 -- ___ashluha3 -- ___ashlusa3 -- ___ashluda3 -- ___ashluta3 -- ___ashrqq3 -- ___ashrhq3 -- ___ashrsq3 -- ___ashrdq3 -- ___ashrtq3 -- ___ashrha3 -- ___ashrsa3 -- ___ashrda3 -- ___ashrta3 -- ___lshruqq3 -- ___lshruhq3 -- ___lshrusq3 -- ___lshrudq3 -- ___lshrutq3 -- ___lshruha3 -- ___lshrusa3 -- ___lshruda3 -- ___lshruta3 -- ___ssashlqq3 -- ___ssashlhq3 -- ___ssashlsq3 -- ___ssashldq3 -- ___ssashltq3 -- ___ssashlha3 -- ___ssashlsa3 -- ___ssashlda3 -- ___ssashlta3 -- ___usashluqq3 -- ___usashluhq3 -- ___usashlusq3 -- ___usashludq3 -- ___usashlutq3 -- ___usashluha3 -- ___usashlusa3 -- ___usashluda3 -- ___usashluta3 -- ___cmpqq2 -- ___cmphq2 -- ___cmpsq2 -- ___cmpdq2 -- ___cmptq2 -- ___cmpuqq2 -- ___cmpuhq2 -- ___cmpusq2 -- ___cmpudq2 -- ___cmputq2 -- ___cmpha2 -- ___cmpsa2 -- ___cmpda2 -- ___cmpta2 -- ___cmpuha2 -- ___cmpusa2 -- ___cmpuda2 -- ___cmputa2 -- ___fractqqhq2 -- ___fractqqsq2 -- ___fractqqdq2 -- ___fractqqtq2 -- ___fractqqha -- ___fractqqsa -- ___fractqqda -- ___fractqqta -- ___fractqquqq -- ___fractqquhq -- ___fractqqusq -- ___fractqqudq -- ___fractqqutq -- ___fractqquha -- ___fractqqusa -- ___fractqquda -- ___fractqquta -- ___fractqqqi -- ___fractqqhi -- ___fractqqsi -- ___fractqqdi -- ___fractqqti -- ___fractqqsf -- ___fractqqdf -- ___fracthqqq2 -- ___fracthqsq2 -- ___fracthqdq2 -- ___fracthqtq2 -- ___fracthqha -- ___fracthqsa -- ___fracthqda -- ___fracthqta -- ___fracthquqq -- ___fracthquhq -- ___fracthqusq -- ___fracthqudq -- ___fracthqutq -- ___fracthquha -- ___fracthqusa -- ___fracthquda -- ___fracthquta -- ___fracthqqi -- ___fracthqhi -- ___fracthqsi -- ___fracthqdi -- ___fracthqti -- ___fracthqsf -- ___fracthqdf -- ___fractsqqq2 -- ___fractsqhq2 -- ___fractsqdq2 -- ___fractsqtq2 -- ___fractsqha -- ___fractsqsa -- ___fractsqda -- ___fractsqta -- ___fractsquqq -- ___fractsquhq -- ___fractsqusq -- ___fractsqudq -- ___fractsqutq -- ___fractsquha -- ___fractsqusa -- ___fractsquda -- ___fractsquta -- ___fractsqqi -- ___fractsqhi -- ___fractsqsi -- ___fractsqdi -- ___fractsqti -- ___fractsqsf -- ___fractsqdf -- ___fractdqqq2 -- ___fractdqhq2 -- ___fractdqsq2 -- ___fractdqtq2 -- ___fractdqha -- ___fractdqsa -- ___fractdqda -- ___fractdqta -- ___fractdquqq -- ___fractdquhq -- ___fractdqusq -- ___fractdqudq -- ___fractdqutq -- ___fractdquha -- ___fractdqusa -- ___fractdquda -- ___fractdquta -- ___fractdqqi -- ___fractdqhi -- ___fractdqsi -- ___fractdqdi -- ___fractdqti -- ___fractdqsf -- ___fractdqdf -- ___fracttqqq2 -- ___fracttqhq2 -- ___fracttqsq2 -- ___fracttqdq2 -- ___fracttqha -- ___fracttqsa -- ___fracttqda -- ___fracttqta -- ___fracttquqq -- ___fracttquhq -- ___fracttqusq -- ___fracttqudq -- ___fracttqutq -- ___fracttquha -- ___fracttqusa -- ___fracttquda -- ___fracttquta -- ___fracttqqi -- ___fracttqhi -- ___fracttqsi -- ___fracttqdi -- ___fracttqti -- ___fracttqsf -- ___fracttqdf -- ___fracthaqq -- ___fracthahq -- ___fracthasq -- ___fracthadq -- ___fracthatq -- ___fracthasa2 -- ___fracthada2 -- ___fracthata2 -- ___fracthauqq -- ___fracthauhq -- ___fracthausq -- ___fracthaudq -- ___fracthautq -- ___fracthauha -- ___fracthausa -- ___fracthauda -- ___fracthauta -- ___fracthaqi -- ___fracthahi -- ___fracthasi -- ___fracthadi -- ___fracthati -- ___fracthasf -- ___fracthadf -- ___fractsaqq -- ___fractsahq -- ___fractsasq -- ___fractsadq -- ___fractsatq -- ___fractsaha2 -- ___fractsada2 -- ___fractsata2 -- ___fractsauqq -- ___fractsauhq -- ___fractsausq -- ___fractsaudq -- ___fractsautq -- ___fractsauha -- ___fractsausa -- ___fractsauda -- ___fractsauta -- ___fractsaqi -- ___fractsahi -- ___fractsasi -- ___fractsadi -- ___fractsati -- ___fractsasf -- ___fractsadf -- ___fractdaqq -- ___fractdahq -- ___fractdasq -- ___fractdadq -- ___fractdatq -- ___fractdaha2 -- ___fractdasa2 -- ___fractdata2 -- ___fractdauqq -- ___fractdauhq -- ___fractdausq -- ___fractdaudq -- ___fractdautq -- ___fractdauha -- ___fractdausa -- ___fractdauda -- ___fractdauta -- ___fractdaqi -- ___fractdahi -- ___fractdasi -- ___fractdadi -- ___fractdati -- ___fractdasf -- ___fractdadf -- ___fracttaqq -- ___fracttahq -- ___fracttasq -- ___fracttadq -- ___fracttatq -- ___fracttaha2 -- ___fracttasa2 -- ___fracttada2 -- ___fracttauqq -- ___fracttauhq -- ___fracttausq -- ___fracttaudq -- ___fracttautq -- ___fracttauha -- ___fracttausa -- ___fracttauda -- ___fracttauta -- ___fracttaqi -- ___fracttahi -- ___fracttasi -- ___fracttadi -- ___fracttati -- ___fracttasf -- ___fracttadf -- ___fractuqqqq -- ___fractuqqhq -- ___fractuqqsq -- ___fractuqqdq -- ___fractuqqtq -- ___fractuqqha -- ___fractuqqsa -- ___fractuqqda -- ___fractuqqta -- ___fractuqquhq2 -- ___fractuqqusq2 -- ___fractuqqudq2 -- ___fractuqqutq2 -- ___fractuqquha -- ___fractuqqusa -- ___fractuqquda -- ___fractuqquta -- ___fractuqqqi -- ___fractuqqhi -- ___fractuqqsi -- ___fractuqqdi -- ___fractuqqti -- ___fractuqqsf -- ___fractuqqdf -- ___fractuhqqq -- ___fractuhqhq -- ___fractuhqsq -- ___fractuhqdq -- ___fractuhqtq -- ___fractuhqha -- ___fractuhqsa -- ___fractuhqda -- ___fractuhqta -- ___fractuhquqq2 -- ___fractuhqusq2 -- ___fractuhqudq2 -- ___fractuhqutq2 -- ___fractuhquha -- ___fractuhqusa -- ___fractuhquda -- ___fractuhquta -- ___fractuhqqi -- ___fractuhqhi -- ___fractuhqsi -- ___fractuhqdi -- ___fractuhqti -- ___fractuhqsf -- ___fractuhqdf -- ___fractusqqq -- ___fractusqhq -- ___fractusqsq -- ___fractusqdq -- ___fractusqtq -- ___fractusqha -- ___fractusqsa -- ___fractusqda -- ___fractusqta -- ___fractusquqq2 -- ___fractusquhq2 -- ___fractusqudq2 -- ___fractusqutq2 -- ___fractusquha -- ___fractusqusa -- ___fractusquda -- ___fractusquta -- ___fractusqqi -- ___fractusqhi -- ___fractusqsi -- ___fractusqdi -- ___fractusqti -- ___fractusqsf -- ___fractusqdf -- ___fractudqqq -- ___fractudqhq -- ___fractudqsq -- ___fractudqdq -- ___fractudqtq -- ___fractudqha -- ___fractudqsa -- ___fractudqda -- ___fractudqta -- ___fractudquqq2 -- ___fractudquhq2 -- ___fractudqusq2 -- ___fractudqutq2 -- ___fractudquha -- ___fractudqusa -- ___fractudquda -- ___fractudquta -- ___fractudqqi -- ___fractudqhi -- ___fractudqsi -- ___fractudqdi -- ___fractudqti -- ___fractudqsf -- ___fractudqdf -- ___fractutqqq -- ___fractutqhq -- ___fractutqsq -- ___fractutqdq -- ___fractutqtq -- ___fractutqha -- ___fractutqsa -- ___fractutqda -- ___fractutqta -- ___fractutquqq2 -- ___fractutquhq2 -- ___fractutqusq2 -- ___fractutqudq2 -- ___fractutquha -- ___fractutqusa -- ___fractutquda -- ___fractutquta -- ___fractutqqi -- ___fractutqhi -- ___fractutqsi -- ___fractutqdi -- ___fractutqti -- ___fractutqsf -- ___fractutqdf -- ___fractuhaqq -- ___fractuhahq -- ___fractuhasq -- ___fractuhadq -- ___fractuhatq -- ___fractuhaha -- ___fractuhasa -- ___fractuhada -- ___fractuhata -- ___fractuhauqq -- ___fractuhauhq -- ___fractuhausq -- ___fractuhaudq -- ___fractuhautq -- ___fractuhausa2 -- ___fractuhauda2 -- ___fractuhauta2 -- ___fractuhaqi -- ___fractuhahi -- ___fractuhasi -- ___fractuhadi -- ___fractuhati -- ___fractuhasf -- ___fractuhadf -- ___fractusaqq -- ___fractusahq -- ___fractusasq -- ___fractusadq -- ___fractusatq -- ___fractusaha -- ___fractusasa -- ___fractusada -- ___fractusata -- ___fractusauqq -- ___fractusauhq -- ___fractusausq -- ___fractusaudq -- ___fractusautq -- ___fractusauha2 -- ___fractusauda2 -- ___fractusauta2 -- ___fractusaqi -- ___fractusahi -- ___fractusasi -- ___fractusadi -- ___fractusati -- ___fractusasf -- ___fractusadf -- ___fractudaqq -- ___fractudahq -- ___fractudasq -- ___fractudadq -- ___fractudatq -- ___fractudaha -- ___fractudasa -- ___fractudada -- ___fractudata -- ___fractudauqq -- ___fractudauhq -- ___fractudausq -- ___fractudaudq -- ___fractudautq -- ___fractudauha2 -- ___fractudausa2 -- ___fractudauta2 -- ___fractudaqi -- ___fractudahi -- ___fractudasi -- ___fractudadi -- ___fractudati -- ___fractudasf -- ___fractudadf -- ___fractutaqq -- ___fractutahq -- ___fractutasq -- ___fractutadq -- ___fractutatq -- ___fractutaha -- ___fractutasa -- ___fractutada -- ___fractutata -- ___fractutauqq -- ___fractutauhq -- ___fractutausq -- ___fractutaudq -- ___fractutautq -- ___fractutauha2 -- ___fractutausa2 -- ___fractutauda2 -- ___fractutaqi -- ___fractutahi -- ___fractutasi -- ___fractutadi -- ___fractutati -- ___fractutasf -- ___fractutadf -- ___fractqiqq -- ___fractqihq -- ___fractqisq -- ___fractqidq -- ___fractqitq -- ___fractqiha -- ___fractqisa -- ___fractqida -- ___fractqita -- ___fractqiuqq -- ___fractqiuhq -- ___fractqiusq -- ___fractqiudq -- ___fractqiutq -- ___fractqiuha -- ___fractqiusa -- ___fractqiuda -- ___fractqiuta -- ___fracthiqq -- ___fracthihq -- ___fracthisq -- ___fracthidq -- ___fracthitq -- ___fracthiha -- ___fracthisa -- ___fracthida -- ___fracthita -- ___fracthiuqq -- ___fracthiuhq -- ___fracthiusq -- ___fracthiudq -- ___fracthiutq -- ___fracthiuha -- ___fracthiusa -- ___fracthiuda -- ___fracthiuta -- ___fractsiqq -- ___fractsihq -- ___fractsisq -- ___fractsidq -- ___fractsitq -- ___fractsiha -- ___fractsisa -- ___fractsida -- ___fractsita -- ___fractsiuqq -- ___fractsiuhq -- ___fractsiusq -- ___fractsiudq -- ___fractsiutq -- ___fractsiuha -- ___fractsiusa -- ___fractsiuda -- ___fractsiuta -- ___fractdiqq -- ___fractdihq -- ___fractdisq -- ___fractdidq -- ___fractditq -- ___fractdiha -- ___fractdisa -- ___fractdida -- ___fractdita -- ___fractdiuqq -- ___fractdiuhq -- ___fractdiusq -- ___fractdiudq -- ___fractdiutq -- ___fractdiuha -- ___fractdiusa -- ___fractdiuda -- ___fractdiuta -- ___fracttiqq -- ___fracttihq -- ___fracttisq -- ___fracttidq -- ___fracttitq -- ___fracttiha -- ___fracttisa -- ___fracttida -- ___fracttita -- ___fracttiuqq -- ___fracttiuhq -- ___fracttiusq -- ___fracttiudq -- ___fracttiutq -- ___fracttiuha -- ___fracttiusa -- ___fracttiuda -- ___fracttiuta -- ___fractsfqq -- ___fractsfhq -- ___fractsfsq -- ___fractsfdq -- ___fractsftq -- ___fractsfha -- ___fractsfsa -- ___fractsfda -- ___fractsfta -- ___fractsfuqq -- ___fractsfuhq -- ___fractsfusq -- ___fractsfudq -- ___fractsfutq -- ___fractsfuha -- ___fractsfusa -- ___fractsfuda -- ___fractsfuta -- ___fractdfqq -- ___fractdfhq -- ___fractdfsq -- ___fractdfdq -- ___fractdftq -- ___fractdfha -- ___fractdfsa -- ___fractdfda -- ___fractdfta -- ___fractdfuqq -- ___fractdfuhq -- ___fractdfusq -- ___fractdfudq -- ___fractdfutq -- ___fractdfuha -- ___fractdfusa -- ___fractdfuda -- ___fractdfuta -- ___satfractqqhq2 -- ___satfractqqsq2 -- ___satfractqqdq2 -- ___satfractqqtq2 -- ___satfractqqha -- ___satfractqqsa -- ___satfractqqda -- ___satfractqqta -- ___satfractqquqq -- ___satfractqquhq -- ___satfractqqusq -- ___satfractqqudq -- ___satfractqqutq -- ___satfractqquha -- ___satfractqqusa -- ___satfractqquda -- ___satfractqquta -- ___satfracthqqq2 -- ___satfracthqsq2 -- ___satfracthqdq2 -- ___satfracthqtq2 -- ___satfracthqha -- ___satfracthqsa -- ___satfracthqda -- ___satfracthqta -- ___satfracthquqq -- ___satfracthquhq -- ___satfracthqusq -- ___satfracthqudq -- ___satfracthqutq -- ___satfracthquha -- ___satfracthqusa -- ___satfracthquda -- ___satfracthquta -- ___satfractsqqq2 -- ___satfractsqhq2 -- ___satfractsqdq2 -- ___satfractsqtq2 -- ___satfractsqha -- ___satfractsqsa -- ___satfractsqda -- ___satfractsqta -- ___satfractsquqq -- ___satfractsquhq -- ___satfractsqusq -- ___satfractsqudq -- ___satfractsqutq -- ___satfractsquha -- ___satfractsqusa -- ___satfractsquda -- ___satfractsquta -- ___satfractdqqq2 -- ___satfractdqhq2 -- ___satfractdqsq2 -- ___satfractdqtq2 -- ___satfractdqha -- ___satfractdqsa -- ___satfractdqda -- ___satfractdqta -- ___satfractdquqq -- ___satfractdquhq -- ___satfractdqusq -- ___satfractdqudq -- ___satfractdqutq -- ___satfractdquha -- ___satfractdqusa -- ___satfractdquda -- ___satfractdquta -- ___satfracttqqq2 -- ___satfracttqhq2 -- ___satfracttqsq2 -- ___satfracttqdq2 -- ___satfracttqha -- ___satfracttqsa -- ___satfracttqda -- ___satfracttqta -- ___satfracttquqq -- ___satfracttquhq -- ___satfracttqusq -- ___satfracttqudq -- ___satfracttqutq -- ___satfracttquha -- ___satfracttqusa -- ___satfracttquda -- ___satfracttquta -- ___satfracthaqq -- ___satfracthahq -- ___satfracthasq -- ___satfracthadq -- ___satfracthatq -- ___satfracthasa2 -- ___satfracthada2 -- ___satfracthata2 -- ___satfracthauqq -- ___satfracthauhq -- ___satfracthausq -- ___satfracthaudq -- ___satfracthautq -- ___satfracthauha -- ___satfracthausa -- ___satfracthauda -- ___satfracthauta -- ___satfractsaqq -- ___satfractsahq -- ___satfractsasq -- ___satfractsadq -- ___satfractsatq -- ___satfractsaha2 -- ___satfractsada2 -- ___satfractsata2 -- ___satfractsauqq -- ___satfractsauhq -- ___satfractsausq -- ___satfractsaudq -- ___satfractsautq -- ___satfractsauha -- ___satfractsausa -- ___satfractsauda -- ___satfractsauta -- ___satfractdaqq -- ___satfractdahq -- ___satfractdasq -- ___satfractdadq -- ___satfractdatq -- ___satfractdaha2 -- ___satfractdasa2 -- ___satfractdata2 -- ___satfractdauqq -- ___satfractdauhq -- ___satfractdausq -- ___satfractdaudq -- ___satfractdautq -- ___satfractdauha -- ___satfractdausa -- ___satfractdauda -- ___satfractdauta -- ___satfracttaqq -- ___satfracttahq -- ___satfracttasq -- ___satfracttadq -- ___satfracttatq -- ___satfracttaha2 -- ___satfracttasa2 -- ___satfracttada2 -- ___satfracttauqq -- ___satfracttauhq -- ___satfracttausq -- ___satfracttaudq -- ___satfracttautq -- ___satfracttauha -- ___satfracttausa -- ___satfracttauda -- ___satfracttauta -- ___satfractuqqqq -- ___satfractuqqhq -- ___satfractuqqsq -- ___satfractuqqdq -- ___satfractuqqtq -- ___satfractuqqha -- ___satfractuqqsa -- ___satfractuqqda -- ___satfractuqqta -- ___satfractuqquhq2 -- ___satfractuqqusq2 -- ___satfractuqqudq2 -- ___satfractuqqutq2 -- ___satfractuqquha -- ___satfractuqqusa -- ___satfractuqquda -- ___satfractuqquta -- ___satfractuhqqq -- ___satfractuhqhq -- ___satfractuhqsq -- ___satfractuhqdq -- ___satfractuhqtq -- ___satfractuhqha -- ___satfractuhqsa -- ___satfractuhqda -- ___satfractuhqta -- ___satfractuhquqq2 -- ___satfractuhqusq2 -- ___satfractuhqudq2 -- ___satfractuhqutq2 -- ___satfractuhquha -- ___satfractuhqusa -- ___satfractuhquda -- ___satfractuhquta -- ___satfractusqqq -- ___satfractusqhq -- ___satfractusqsq -- ___satfractusqdq -- ___satfractusqtq -- ___satfractusqha -- ___satfractusqsa -- ___satfractusqda -- ___satfractusqta -- ___satfractusquqq2 -- ___satfractusquhq2 -- ___satfractusqudq2 -- ___satfractusqutq2 -- ___satfractusquha -- ___satfractusqusa -- ___satfractusquda -- ___satfractusquta -- ___satfractudqqq -- ___satfractudqhq -- ___satfractudqsq -- ___satfractudqdq -- ___satfractudqtq -- ___satfractudqha -- ___satfractudqsa -- ___satfractudqda -- ___satfractudqta -- ___satfractudquqq2 -- ___satfractudquhq2 -- ___satfractudqusq2 -- ___satfractudqutq2 -- ___satfractudquha -- ___satfractudqusa -- ___satfractudquda -- ___satfractudquta -- ___satfractutqqq -- ___satfractutqhq -- ___satfractutqsq -- ___satfractutqdq -- ___satfractutqtq -- ___satfractutqha -- ___satfractutqsa -- ___satfractutqda -- ___satfractutqta -- ___satfractutquqq2 -- ___satfractutquhq2 -- ___satfractutqusq2 -- ___satfractutqudq2 -- ___satfractutquha -- ___satfractutqusa -- ___satfractutquda -- ___satfractutquta -- ___satfractuhaqq -- ___satfractuhahq -- ___satfractuhasq -- ___satfractuhadq -- ___satfractuhatq -- ___satfractuhaha -- ___satfractuhasa -- ___satfractuhada -- ___satfractuhata -- ___satfractuhauqq -- ___satfractuhauhq -- ___satfractuhausq -- ___satfractuhaudq -- ___satfractuhautq -- ___satfractuhausa2 -- ___satfractuhauda2 -- ___satfractuhauta2 -- ___satfractusaqq -- ___satfractusahq -- ___satfractusasq -- ___satfractusadq -- ___satfractusatq -- ___satfractusaha -- ___satfractusasa -- ___satfractusada -- ___satfractusata -- ___satfractusauqq -- ___satfractusauhq -- ___satfractusausq -- ___satfractusaudq -- ___satfractusautq -- ___satfractusauha2 -- ___satfractusauda2 -- ___satfractusauta2 -- ___satfractudaqq -- ___satfractudahq -- ___satfractudasq -- ___satfractudadq -- ___satfractudatq -- ___satfractudaha -- ___satfractudasa -- ___satfractudada -- ___satfractudata -- ___satfractudauqq -- ___satfractudauhq -- ___satfractudausq -- ___satfractudaudq -- ___satfractudautq -- ___satfractudauha2 -- ___satfractudausa2 -- ___satfractudauta2 -- ___satfractutaqq -- ___satfractutahq -- ___satfractutasq -- ___satfractutadq -- ___satfractutatq -- ___satfractutaha -- ___satfractutasa -- ___satfractutada -- ___satfractutata -- ___satfractutauqq -- ___satfractutauhq -- ___satfractutausq -- ___satfractutaudq -- ___satfractutautq -- ___satfractutauha2 -- ___satfractutausa2 -- ___satfractutauda2 -- ___satfractqiqq -- ___satfractqihq -- ___satfractqisq -- ___satfractqidq -- ___satfractqitq -- ___satfractqiha -- ___satfractqisa -- ___satfractqida -- ___satfractqita -- ___satfractqiuqq -- ___satfractqiuhq -- ___satfractqiusq -- ___satfractqiudq -- ___satfractqiutq -- ___satfractqiuha -- ___satfractqiusa -- ___satfractqiuda -- ___satfractqiuta -- ___satfracthiqq -- ___satfracthihq -- ___satfracthisq -- ___satfracthidq -- ___satfracthitq -- ___satfracthiha -- ___satfracthisa -- ___satfracthida -- ___satfracthita -- ___satfracthiuqq -- ___satfracthiuhq -- ___satfracthiusq -- ___satfracthiudq -- ___satfracthiutq -- ___satfracthiuha -- ___satfracthiusa -- ___satfracthiuda -- ___satfracthiuta -- ___satfractsiqq -- ___satfractsihq -- ___satfractsisq -- ___satfractsidq -- ___satfractsitq -- ___satfractsiha -- ___satfractsisa -- ___satfractsida -- ___satfractsita -- ___satfractsiuqq -- ___satfractsiuhq -- ___satfractsiusq -- ___satfractsiudq -- ___satfractsiutq -- ___satfractsiuha -- ___satfractsiusa -- ___satfractsiuda -- ___satfractsiuta -- ___satfractdiqq -- ___satfractdihq -- ___satfractdisq -- ___satfractdidq -- ___satfractditq -- ___satfractdiha -- ___satfractdisa -- ___satfractdida -- ___satfractdita -- ___satfractdiuqq -- ___satfractdiuhq -- ___satfractdiusq -- ___satfractdiudq -- ___satfractdiutq -- ___satfractdiuha -- ___satfractdiusa -- ___satfractdiuda -- ___satfractdiuta -- ___satfracttiqq -- ___satfracttihq -- ___satfracttisq -- ___satfracttidq -- ___satfracttitq -- ___satfracttiha -- ___satfracttisa -- ___satfracttida -- ___satfracttita -- ___satfracttiuqq -- ___satfracttiuhq -- ___satfracttiusq -- ___satfracttiudq -- ___satfracttiutq -- ___satfracttiuha -- ___satfracttiusa -- ___satfracttiuda -- ___satfracttiuta -- ___satfractsfqq -- ___satfractsfhq -- ___satfractsfsq -- ___satfractsfdq -- ___satfractsftq -- ___satfractsfha -- ___satfractsfsa -- ___satfractsfda -- ___satfractsfta -- ___satfractsfuqq -- ___satfractsfuhq -- ___satfractsfusq -- ___satfractsfudq -- ___satfractsfutq -- ___satfractsfuha -- ___satfractsfusa -- ___satfractsfuda -- ___satfractsfuta -- ___satfractdfqq -- ___satfractdfhq -- ___satfractdfsq -- ___satfractdfdq -- ___satfractdftq -- ___satfractdfha -- ___satfractdfsa -- ___satfractdfda -- ___satfractdfta -- ___satfractdfuqq -- ___satfractdfuhq -- ___satfractdfusq -- ___satfractdfudq -- ___satfractdfutq -- ___satfractdfuha -- ___satfractdfusa -- ___satfractdfuda -- ___satfractdfuta -- ___fractunsqqqi -- ___fractunsqqhi -- ___fractunsqqsi -- ___fractunsqqdi -- ___fractunsqqti -- ___fractunshqqi -- ___fractunshqhi -- ___fractunshqsi -- ___fractunshqdi -- ___fractunshqti -- ___fractunssqqi -- ___fractunssqhi -- ___fractunssqsi -- ___fractunssqdi -- ___fractunssqti -- ___fractunsdqqi -- ___fractunsdqhi -- ___fractunsdqsi -- ___fractunsdqdi -- ___fractunsdqti -- ___fractunstqqi -- ___fractunstqhi -- ___fractunstqsi -- ___fractunstqdi -- ___fractunstqti -- ___fractunshaqi -- ___fractunshahi -- ___fractunshasi -- ___fractunshadi -- ___fractunshati -- ___fractunssaqi -- ___fractunssahi -- ___fractunssasi -- ___fractunssadi -- ___fractunssati -- ___fractunsdaqi -- ___fractunsdahi -- ___fractunsdasi -- ___fractunsdadi -- ___fractunsdati -- ___fractunstaqi -- ___fractunstahi -- ___fractunstasi -- ___fractunstadi -- ___fractunstati -- ___fractunsuqqqi -- ___fractunsuqqhi -- ___fractunsuqqsi -- ___fractunsuqqdi -- ___fractunsuqqti -- ___fractunsuhqqi -- ___fractunsuhqhi -- ___fractunsuhqsi -- ___fractunsuhqdi -- ___fractunsuhqti -- ___fractunsusqqi -- ___fractunsusqhi -- ___fractunsusqsi -- ___fractunsusqdi -- ___fractunsusqti -- ___fractunsudqqi -- ___fractunsudqhi -- ___fractunsudqsi -- ___fractunsudqdi -- ___fractunsudqti -- ___fractunsutqqi -- ___fractunsutqhi -- ___fractunsutqsi -- ___fractunsutqdi -- ___fractunsutqti -- ___fractunsuhaqi -- ___fractunsuhahi -- ___fractunsuhasi -- ___fractunsuhadi -- ___fractunsuhati -- ___fractunsusaqi -- ___fractunsusahi -- ___fractunsusasi -- ___fractunsusadi -- ___fractunsusati -- ___fractunsudaqi -- ___fractunsudahi -- ___fractunsudasi -- ___fractunsudadi -- ___fractunsudati -- ___fractunsutaqi -- ___fractunsutahi -- ___fractunsutasi -- ___fractunsutadi -- ___fractunsutati -- ___fractunsqiqq -- ___fractunsqihq -- ___fractunsqisq -- ___fractunsqidq -- ___fractunsqitq -- ___fractunsqiha -- ___fractunsqisa -- ___fractunsqida -- ___fractunsqita -- ___fractunsqiuqq -- ___fractunsqiuhq -- ___fractunsqiusq -- ___fractunsqiudq -- ___fractunsqiutq -- ___fractunsqiuha -- ___fractunsqiusa -- ___fractunsqiuda -- ___fractunsqiuta -- ___fractunshiqq -- ___fractunshihq -- ___fractunshisq -- ___fractunshidq -- ___fractunshitq -- ___fractunshiha -- ___fractunshisa -- ___fractunshida -- ___fractunshita -- ___fractunshiuqq -- ___fractunshiuhq -- ___fractunshiusq -- ___fractunshiudq -- ___fractunshiutq -- ___fractunshiuha -- ___fractunshiusa -- ___fractunshiuda -- ___fractunshiuta -- ___fractunssiqq -- ___fractunssihq -- ___fractunssisq -- ___fractunssidq -- ___fractunssitq -- ___fractunssiha -- ___fractunssisa -- ___fractunssida -- ___fractunssita -- ___fractunssiuqq -- ___fractunssiuhq -- ___fractunssiusq -- ___fractunssiudq -- ___fractunssiutq -- ___fractunssiuha -- ___fractunssiusa -- ___fractunssiuda -- ___fractunssiuta -- ___fractunsdiqq -- ___fractunsdihq -- ___fractunsdisq -- ___fractunsdidq -- ___fractunsditq -- ___fractunsdiha -- ___fractunsdisa -- ___fractunsdida -- ___fractunsdita -- ___fractunsdiuqq -- ___fractunsdiuhq -- ___fractunsdiusq -- ___fractunsdiudq -- ___fractunsdiutq -- ___fractunsdiuha -- ___fractunsdiusa -- ___fractunsdiuda -- ___fractunsdiuta -- ___fractunstiqq -- ___fractunstihq -- ___fractunstisq -- ___fractunstidq -- ___fractunstitq -- ___fractunstiha -- ___fractunstisa -- ___fractunstida -- ___fractunstita -- ___fractunstiuqq -- ___fractunstiuhq -- ___fractunstiusq -- ___fractunstiudq -- ___fractunstiutq -- ___fractunstiuha -- ___fractunstiusa -- ___fractunstiuda -- ___fractunstiuta -- ___satfractunsqiqq -- ___satfractunsqihq -- ___satfractunsqisq -- ___satfractunsqidq -- ___satfractunsqitq -- ___satfractunsqiha -- ___satfractunsqisa -- ___satfractunsqida -- ___satfractunsqita -- ___satfractunsqiuqq -- ___satfractunsqiuhq -- ___satfractunsqiusq -- ___satfractunsqiudq -- ___satfractunsqiutq -- ___satfractunsqiuha -- ___satfractunsqiusa -- ___satfractunsqiuda -- ___satfractunsqiuta -- ___satfractunshiqq -- ___satfractunshihq -- ___satfractunshisq -- ___satfractunshidq -- ___satfractunshitq -- ___satfractunshiha -- ___satfractunshisa -- ___satfractunshida -- ___satfractunshita -- ___satfractunshiuqq -- ___satfractunshiuhq -- ___satfractunshiusq -- ___satfractunshiudq -- ___satfractunshiutq -- ___satfractunshiuha -- ___satfractunshiusa -- ___satfractunshiuda -- ___satfractunshiuta -- ___satfractunssiqq -- ___satfractunssihq -- ___satfractunssisq -- ___satfractunssidq -- ___satfractunssitq -- ___satfractunssiha -- ___satfractunssisa -- ___satfractunssida -- ___satfractunssita -- ___satfractunssiuqq -- ___satfractunssiuhq -- ___satfractunssiusq -- ___satfractunssiudq -- ___satfractunssiutq -- ___satfractunssiuha -- ___satfractunssiusa -- ___satfractunssiuda -- ___satfractunssiuta -- ___satfractunsdiqq -- ___satfractunsdihq -- ___satfractunsdisq -- ___satfractunsdidq -- ___satfractunsditq -- ___satfractunsdiha -- ___satfractunsdisa -- ___satfractunsdida -- ___satfractunsdita -- ___satfractunsdiuqq -- ___satfractunsdiuhq -- ___satfractunsdiusq -- ___satfractunsdiudq -- ___satfractunsdiutq -- ___satfractunsdiuha -- ___satfractunsdiusa -- ___satfractunsdiuda -- ___satfractunsdiuta -- ___satfractunstiqq -- ___satfractunstihq -- ___satfractunstisq -- ___satfractunstidq -- ___satfractunstitq -- ___satfractunstiha -- ___satfractunstisa -- ___satfractunstida -- ___satfractunstita -- ___satfractunstiuqq -- ___satfractunstiuhq -- ___satfractunstiusq -- ___satfractunstiudq -- ___satfractunstiutq -- ___satfractunstiuha -- ___satfractunstiusa -- ___satfractunstiuda -- ___satfractunstiuta --} -- --%inherit GCC_4.4.0 GCC_4.3.0 --GCC_4.4.0 { -- ___sync_fetch_and_add_1 -- ___sync_fetch_and_sub_1 -- ___sync_fetch_and_or_1 -- ___sync_fetch_and_and_1 -- ___sync_fetch_and_xor_1 -- ___sync_fetch_and_nand_1 -- ___sync_add_and_fetch_1 -- ___sync_sub_and_fetch_1 -- ___sync_or_and_fetch_1 -- ___sync_and_and_fetch_1 -- ___sync_xor_and_fetch_1 -- ___sync_nand_and_fetch_1 -- ___sync_bool_compare_and_swap_1 -- ___sync_val_compare_and_swap_1 -- ___sync_lock_test_and_set_1 -- -- ___sync_fetch_and_add_2 -- ___sync_fetch_and_sub_2 -- ___sync_fetch_and_or_2 -- ___sync_fetch_and_and_2 -- ___sync_fetch_and_xor_2 -- ___sync_fetch_and_nand_2 -- ___sync_add_and_fetch_2 -- ___sync_sub_and_fetch_2 -- ___sync_or_and_fetch_2 -- ___sync_and_and_fetch_2 -- ___sync_xor_and_fetch_2 -- ___sync_nand_and_fetch_2 -- ___sync_bool_compare_and_swap_2 -- ___sync_val_compare_and_swap_2 -- ___sync_lock_test_and_set_2 -- -- ___sync_fetch_and_add_4 -- ___sync_fetch_and_sub_4 -- ___sync_fetch_and_or_4 -- ___sync_fetch_and_and_4 -- ___sync_fetch_and_xor_4 -- ___sync_fetch_and_nand_4 -- ___sync_add_and_fetch_4 -- ___sync_sub_and_fetch_4 -- ___sync_or_and_fetch_4 -- ___sync_and_and_fetch_4 -- ___sync_xor_and_fetch_4 -- ___sync_nand_and_fetch_4 -- ___sync_bool_compare_and_swap_4 -- ___sync_val_compare_and_swap_4 -- ___sync_lock_test_and_set_4 -- -- ___sync_fetch_and_add_8 -- ___sync_fetch_and_sub_8 -- ___sync_fetch_and_or_8 -- ___sync_fetch_and_and_8 -- ___sync_fetch_and_xor_8 -- ___sync_fetch_and_nand_8 -- ___sync_add_and_fetch_8 -- ___sync_sub_and_fetch_8 -- ___sync_or_and_fetch_8 -- ___sync_and_and_fetch_8 -- ___sync_xor_and_fetch_8 -- ___sync_nand_and_fetch_8 -- ___sync_bool_compare_and_swap_8 -- ___sync_val_compare_and_swap_8 -- ___sync_lock_test_and_set_8 -- -- ___sync_fetch_and_add_16 -- ___sync_fetch_and_sub_16 -- ___sync_fetch_and_or_16 -- ___sync_fetch_and_and_16 -- ___sync_fetch_and_xor_16 -- ___sync_fetch_and_nand_16 -- ___sync_add_and_fetch_16 -- ___sync_sub_and_fetch_16 -- ___sync_or_and_fetch_16 -- ___sync_and_and_fetch_16 -- ___sync_xor_and_fetch_16 -- ___sync_nand_and_fetch_16 -- ___sync_bool_compare_and_swap_16 -- ___sync_val_compare_and_swap_16 -- ___sync_lock_test_and_set_16 -- -- ___sync_synchronize --} -- --%inherit GCC_4.5.0 GCC_4.4.0 --GCC_4.5.0 { -- ___unordxf2 -- ___unordtf2 -+ __smulsi3_highpart -+ __umulsi3_highpart - } ---- a/libgcc/config/bfin/t-linux -+++ b/libgcc/config/bfin/t-linux -@@ -1 +1,2 @@ --SHLIB_MAPFILES = $(srcdir)/config/bfin/libgcc-glibc.ver -+SHLIB_MAPFILES += $(srcdir)/config/bfin/libgcc-glibc.ver -+SHLIB_MKMAP_OPTS = -v skip_underscore=1 diff --git a/packages/gcc-linaro/6.4-2017.11/0012-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch b/packages/gcc-linaro/6.4-2017.11/0012-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch deleted file mode 100644 index f0ada67..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0012-libgcc-fix-DWARF-compilation-with-FDPIC-targets.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 9d9f97ca5d1ceba66677bf406c9b31027dc1f22e Mon Sep 17 00:00:00 2001 -From: Waldemar Brodkorb <wbx@openadk.org> -Date: Fri, 19 Aug 2016 13:54:46 +0200 -Subject: [PATCH] libgcc: fix DWARF compilation with FDPIC targets - -The build of unwind-dw2-fde-dip.c currently fails for FDPIC targets with -the following error: - -libgcc/unwind-dw2-fde-dip.c:167:31: error: storage size of 'load_base' isn't known - struct elf32_fdpic_loadaddr load_base; - -This patch addresses that by defining load_base with the appropriate -type on FDPIC targets. It has been tested on FRV and Blackfin. - -Fixes PR gcc/68468. - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> -Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> ---- - libgcc/unwind-dw2-fde-dip.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - ---- a/libgcc/unwind-dw2-fde-dip.c -+++ b/libgcc/unwind-dw2-fde-dip.c -@@ -124,7 +124,11 @@ - { - _Unwind_Ptr pc_low; - _Unwind_Ptr pc_high; -+#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ -+ struct elf32_fdpic_loadaddr load_base; -+#else - _Unwind_Ptr load_base; -+#endif - const ElfW(Phdr) *p_eh_frame_hdr; - const ElfW(Phdr) *p_dynamic; - struct frame_hdr_cache_element *link; -@@ -163,7 +167,7 @@ - struct unw_eh_callback_data *data = (struct unw_eh_callback_data *) ptr; - const ElfW(Phdr) *phdr, *p_eh_frame_hdr, *p_dynamic; - long n, match; --#ifdef __FRV_FDPIC__ -+#if defined __FRV_FDPIC__ || defined __BFIN_FDPIC__ - struct elf32_fdpic_loadaddr load_base; - #else - _Unwind_Ptr load_base; -@@ -347,7 +351,7 @@ - break; - } - } --# elif defined __FRV_FDPIC__ && defined __linux__ -+# elif (defined __FRV_FDPIC__ || defined __BFIN_FDPIC__) && defined __linux__ - data->dbase = load_base.got_value; - # else - # error What is DW_EH_PE_datarel base on this platform? diff --git a/packages/gcc-linaro/6.4-2017.11/0013-bfin-define-REENTRANT.patch b/packages/gcc-linaro/6.4-2017.11/0013-bfin-define-REENTRANT.patch deleted file mode 100644 index 633084b..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0013-bfin-define-REENTRANT.patch +++ /dev/null @@ -1,20 +0,0 @@ -enable _REENTRANT when -lpthread is used - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> - ---- - gcc/config/bfin/linux.h | 3 +++ - 1 file changed, 3 insertions(+) - ---- a/gcc/config/bfin/linux.h -+++ b/gcc/config/bfin/linux.h -@@ -38,6 +38,9 @@ - "%{static:--start-group} %{mfast-fp:-lbffastfp} %G %L %{static:--end-group} \ - %{!static:%{mfast-fp:-lbffastfp} %G}" - -+#undef CPP_SPEC -+#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}" -+ - #undef LINK_SPEC - #define LINK_SPEC "\ - %{mfdpic: -m elf32bfinfd -z text} %{shared} %{pie} \ diff --git a/packages/gcc-linaro/6.4-2017.11/0014-libgfortran-missing-include.patch b/packages/gcc-linaro/6.4-2017.11/0014-libgfortran-missing-include.patch deleted file mode 100644 index 701e7b4..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0014-libgfortran-missing-include.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- - libgfortran/io/close.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/libgfortran/io/close.c -+++ b/libgfortran/io/close.c -@@ -25,6 +25,7 @@ - #include "io.h" - #include "unix.h" - #include <limits.h> -+#include <stdlib.h> - - typedef enum - { CLOSE_DELETE, CLOSE_KEEP, CLOSE_UNSPECIFIED } diff --git a/packages/gcc-linaro/6.4-2017.11/0015-nios2-bad-multilib-default.patch b/packages/gcc-linaro/6.4-2017.11/0015-nios2-bad-multilib-default.patch deleted file mode 100644 index 4acc491..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0015-nios2-bad-multilib-default.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- - gcc/config/nios2/nios2.h | 4 ++-- - gcc/config/nios2/t-nios2 | 3 +-- - 2 files changed, 3 insertions(+), 4 deletions(-) - ---- a/gcc/config/nios2/nios2.h -+++ b/gcc/config/nios2/nios2.h -@@ -63,11 +63,11 @@ - #if TARGET_ENDIAN_DEFAULT == 0 - # define ASM_SPEC "%{!meb:-EL} %{meb:-EB} %{march=*:-march=%*}" - # define LINK_SPEC_ENDIAN "%{!meb:-EL} %{meb:-EB}" --# define MULTILIB_DEFAULTS { "EL" } -+# define MULTILIB_DEFAULTS { "mel" } - #else - # define ASM_SPEC "%{!mel:-EB} %{mel:-EL} %{march=*:-march=%*}" - # define LINK_SPEC_ENDIAN "%{!mel:-EB} %{mel:-EL}" --# define MULTILIB_DEFAULTS { "EB" } -+# define MULTILIB_DEFAULTS { "meb" } - #endif - - #define LINK_SPEC LINK_SPEC_ENDIAN \ ---- a/gcc/config/nios2/t-nios2 -+++ b/gcc/config/nios2/t-nios2 -@@ -22,6 +22,5 @@ - # MULTILIB_DIRNAMES = nomul mulx fpu-60-1 fpu-60-2 - # MULTILIB_EXCEPTIONS = - --# MULTILIB_OPTIONS += EL/EB -+# MULTILIB_OPTIONS += mel/meb - # MULTILIB_DIRNAMES += le be --# MULTILIB_MATCHES += EL=mel EB=meb diff --git a/packages/gcc-linaro/6.4-2017.11/0016-libgcc-disable-split-stack-nothreads.patch b/packages/gcc-linaro/6.4-2017.11/0016-libgcc-disable-split-stack-nothreads.patch deleted file mode 100644 index df91a9f..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0016-libgcc-disable-split-stack-nothreads.patch +++ /dev/null @@ -1,17 +0,0 @@ -disable split-stack for non-thread builds - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> - ---- - libgcc/config/t-stack | 2 ++ - 1 file changed, 2 insertions(+) - ---- a/libgcc/config/t-stack -+++ b/libgcc/config/t-stack -@@ -1,4 +1,6 @@ - # Makefile fragment to provide generic support for -fsplit-stack. - # This should be used in config.host for any host which supports - # -fsplit-stack. -+ifeq ($(enable_threads),yes) - LIB2ADD_ST += $(srcdir)/generic-morestack.c $(srcdir)/generic-morestack-thread.c -+endif diff --git a/packages/gcc-linaro/6.4-2017.11/0017-uclinux-enable-threads.patch b/packages/gcc-linaro/6.4-2017.11/0017-uclinux-enable-threads.patch deleted file mode 100644 index 8e4e0a2..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0017-uclinux-enable-threads.patch +++ /dev/null @@ -1,22 +0,0 @@ -Enable POSIX threads for uClinux targets -Reported upstream: -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71721 - -Signed-off-by: Waldemar Brodkorb <wbx@openadk.org> - ---- - gcc/config.gcc | 3 +++ - 1 file changed, 3 insertions(+) - ---- a/gcc/config.gcc -+++ b/gcc/config.gcc -@@ -838,6 +838,9 @@ - *-*-uclinux*) - extra_options="$extra_options gnu-user.opt" - use_gcc_stdint=wrap -+ case ${enable_threads} in -+ "" | yes | posix) thread_file='posix' ;; -+ esac - tm_defines="$tm_defines DEFAULT_LIBC=LIBC_UCLIBC SINGLE_LIBC" - ;; - *-*-rdos*) diff --git a/packages/gcc-linaro/6.4-2017.11/0018-bionic-ndk.patch b/packages/gcc-linaro/6.4-2017.11/0018-bionic-ndk.patch deleted file mode 100644 index 474dd8c..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0018-bionic-ndk.patch +++ /dev/null @@ -1,60 +0,0 @@ -commit d38d37bdfe24b7ce1bdcb55642fb6b904718e68f -Author: Howard Chu <hyc@symas.com> -Date: Tue Apr 25 19:02:18 2017 -0700 - - Fix ctype for newer NDK headers - ---- - libstdc++-v3/config/os/bionic/ctype_base.h | 34 +++++++++++++++++++---------- - 1 file changed, 23 insertions(+), 11 deletions(-) - ---- a/libstdc++-v3/config/os/bionic/ctype_base.h -+++ b/libstdc++-v3/config/os/bionic/ctype_base.h -@@ -28,6 +28,18 @@ - - // Information as gleaned from /usr/include/ctype.h - -+// _CTYPE prefix was added in NDK r14 unified headers -+#ifndef _CTYPE_U -+#define _CTYPE_U _U -+#define _CTYPE_L _L -+#define _CTYPE_D _N -+#define _CTYPE_S _S -+#define _CTYPE_P _P -+#define _CTYPE_C _C -+#define _CTYPE_X _X -+#define _CTYPE_B _B -+#endif -+ - namespace std _GLIBCXX_VISIBILITY(default) - { - _GLIBCXX_BEGIN_NAMESPACE_VERSION -@@ -41,17 +53,17 @@ - // NB: Offsets into ctype<char>::_M_table force a particular size - // on the mask type. Because of this, we don't use an enum. - typedef char mask; -- static const mask upper = _U; -- static const mask lower = _L; -- static const mask alpha = _U | _L; -- static const mask digit = _N; -- static const mask xdigit = _X | _N; -- static const mask space = _S; -- static const mask print = _P | _U | _L | _N | _B; -- static const mask graph = _P | _U | _L | _N; -- static const mask cntrl = _C; -- static const mask punct = _P; -- static const mask alnum = _U | _L | _N; -+ static const mask upper = _CTYPE_U; -+ static const mask lower = _CTYPE_L; -+ static const mask alpha = _CTYPE_U | _CTYPE_L; -+ static const mask digit = _CTYPE_D; -+ static const mask xdigit = _CTYPE_X | _CTYPE_D; -+ static const mask space = _CTYPE_S; -+ static const mask print = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_D | _CTYPE_B; -+ static const mask graph = _CTYPE_P | _CTYPE_U | _CTYPE_L | _CTYPE_D; -+ static const mask cntrl = _CTYPE_C; -+ static const mask punct = _CTYPE_P; -+ static const mask alnum = _CTYPE_U | _CTYPE_L | _CTYPE_D; - #if __cplusplus >= 201103L - static const mask blank = space; - #endif diff --git a/packages/gcc-linaro/6.4-2017.11/0019-bionic-errno.patch b/packages/gcc-linaro/6.4-2017.11/0019-bionic-errno.patch deleted file mode 100644 index 0a1a632..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0019-bionic-errno.patch +++ /dev/null @@ -1,21 +0,0 @@ -commit 6cd4ad106ef87a3c58b0c3478e78409b47000de0 -Author: Howard Chu <hyc@symas.com> -Date: Tue Apr 25 20:17:03 2017 -0700 - - Fix, errno is volatile int - ---- - libstdc++-v3/src/filesystem/dir.cc | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/libstdc++-v3/src/filesystem/dir.cc -+++ b/libstdc++-v3/src/filesystem/dir.cc -@@ -146,7 +146,7 @@ - - int err = std::exchange(errno, 0); - const auto entp = readdir(dirp); -- std::swap(errno, err); -+ std::swap((int&)errno, err); - - if (entp) - { diff --git a/packages/gcc-linaro/6.4-2017.11/0020-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0020-crystax.patch deleted file mode 100644 index 461be72..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0020-crystax.patch +++ /dev/null @@ -1,530 +0,0 @@ -commit 080803512c8f6f87c2f1f711170d54033144d628 -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Wed Jul 29 11:28:29 2015 +0300 - - [android] Apply Android-related modifications - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - -[Edited: keep libstdc++, drop libcrystax-related modifications] ---- - gcc/config.gcc | 17 +++++++- - gcc/config/aarch64/aarch64-linux-android.h | 59 +++++++++++++++++++++++++++++ - gcc/config/aarch64/aarch64-linux.h | 9 +++- - gcc/config/arm/arm.h | 3 - - gcc/config/arm/arm.md | 2 - gcc/config/arm/arm.opt | 4 + - gcc/config/arm/elf.h | 10 ++-- - gcc/config/arm/linux-eabi.h | 7 ++- - gcc/config/i386/gnu-user.h | 7 ++- - gcc/config/i386/gnu-user64.h | 5 ++ - gcc/config/i386/linux-common.h | 8 +++ - gcc/config/linux-android.h | 13 +++--- - gcc/config/mips/android.h | 49 ++++++++++++++++++++++++ - gcc/config/mips/gnu-user.h | 6 +- - gcc/config/mips/linux-common.h | 2 - gcc/config/mips/t-linux-android | 3 + - gcc/config/mips/t-linux-android64 | 4 + - libgcc/gthr-posix.h | 13 ++++++ - libstdc++-v3/configure | 12 +++++ - libstdc++-v3/include/bits/locale_facets.h | 18 +++++++- - libstdc++-v3/libsupc++/guard.cc | 5 ++ - 21 files changed, 235 insertions(+), 21 deletions(-) - ---- a/gcc/config.gcc -+++ b/gcc/config.gcc -@@ -955,13 +955,17 @@ - tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-freebsd" - ;; - aarch64*-*-linux*) -- tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h" -+ tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h" - tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-linux.h" -+ extra_options="${extra_options} linux-android.opt" - tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-linux" - case $target in - aarch64_be-*) - tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" - ;; -+ aarch64*-*-linux-android*) -+ tm_file="${tm_file} aarch64/aarch64-linux-android.h" -+ ;; - esac - aarch64_multilibs="${with_multilib_list}" - if test "$aarch64_multilibs" = "default"; then -@@ -2076,6 +2080,17 @@ - tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h" - extra_options="${extra_options} linux-android.opt" - case ${target} in -+ mips64*android*) -+ default_mips_arch=mips64r6 -+ default_mips_abi=64 -+ tm_file="${tm_file} mips/android.h" -+ tmake_file="${tmake_file} mips/t-linux-android64" -+ ;; -+ mips*android*) -+ default_mips_arch=mips32 -+ tm_file="${tm_file} mips/android.h" -+ tmake_file="$tmake_file mips/t-linux-android" -+ ;; - mipsisa32r6*) - default_mips_arch=mips32r6 - ;; ---- /dev/null -+++ b/gcc/config/aarch64/aarch64-linux-android.h -@@ -0,0 +1,59 @@ -+/* Machine description for AArch64 architecture. -+ Copyright (C) 2014 Free Software Foundation, Inc. -+ -+ This file is part of GCC. -+ -+ GCC is free software; you can redistribute it and/or modify it -+ under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 3, or (at your option) -+ any later version. -+ -+ GCC is distributed in the hope that it will be useful, but -+ WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with GCC; see the file COPYING3. If not see -+ <http://www.gnu.org/licenses/>. */ -+ -+#ifndef GCC_AARCH64_LINUX_ANDROID_H -+#define GCC_AARCH64_LINUX_ANDROID_H -+ -+ -+#undef TARGET_OS_CPP_BUILTINS -+#define TARGET_OS_CPP_BUILTINS() \ -+ do \ -+ { \ -+ GNU_USER_TARGET_OS_CPP_BUILTINS(); \ -+ ANDROID_TARGET_OS_CPP_BUILTINS(); \ -+ } \ -+ while (0) -+ -+#undef LINK_SPEC -+#define LINK_SPEC \ -+ LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ -+ LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) -+ -+#undef CC1_SPEC -+#define CC1_SPEC \ -+ LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC, \ -+ GNU_USER_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC("-fpic")) -+ -+#define CC1PLUS_SPEC \ -+ LINUX_OR_ANDROID_CC ("", ANDROID_CC1PLUS_SPEC) -+ -+#undef LIB_SPEC -+#define LIB_SPEC \ -+ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ -+ GNU_USER_TARGET_NO_PTHREADS_LIB_SPEC " " ANDROID_LIB_SPEC) -+ -+#undef STARTFILE_SPEC -+#define STARTFILE_SPEC \ -+ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_STARTFILE_SPEC, ANDROID_STARTFILE_SPEC) -+ -+#undef ENDFILE_SPEC -+#define ENDFILE_SPEC \ -+ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) -+ -+#endif /* GCC_AARCH64_LINUX_ANDROID_H */ ---- a/gcc/config/aarch64/aarch64-linux.h -+++ b/gcc/config/aarch64/aarch64-linux.h -@@ -21,7 +21,14 @@ - #ifndef GCC_AARCH64_LINUX_H - #define GCC_AARCH64_LINUX_H - --#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#ifndef RUNTIME_ROOT_PREFIX -+#define RUNTIME_ROOT_PREFIX "" -+#endif -+#define GLIBC_DYNAMIC_LINKER RUNTIME_ROOT_PREFIX "/lib/ld-linux-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" -+#ifdef BIONIC_DYNAMIC_LINKER -+#undef BIONIC_DYNAMIC_LINKER -+#endif -+#define BIONIC_DYNAMIC_LINKER RUNTIME_ROOT_PREFIX "/system/bin/linker64" - - #undef MUSL_DYNAMIC_LINKER - #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1" ---- a/gcc/config/arm/arm.h -+++ b/gcc/config/arm/arm.h -@@ -1922,10 +1922,11 @@ - - #define CASE_VECTOR_PC_RELATIVE (TARGET_THUMB2 \ - || (TARGET_THUMB1 \ -+ && !inline_thumb1_jump_table \ - && (optimize_size || flag_pic))) - - #define CASE_VECTOR_SHORTEN_MODE(min, max, body) \ -- (TARGET_THUMB1 \ -+ (TARGET_THUMB1 && !inline_thumb1_jump_table \ - ? (min >= 0 && max < 512 \ - ? (ADDR_DIFF_VEC_FLAGS (body).offset_unsigned = 1, QImode) \ - : min >= -256 && max < 256 \ ---- a/gcc/config/arm/arm.md -+++ b/gcc/config/arm/arm.md -@@ -8657,7 +8657,7 @@ - (match_operand:SI 2 "const_int_operand" "") ; total range - (match_operand:SI 3 "" "") ; table label - (match_operand:SI 4 "" "")] ; Out of range label -- "(TARGET_32BIT || optimize_size || flag_pic) && !target_pure_code" -+ "(TARGET_32BIT || ((optimize_size || flag_pic) && !inline_thumb1_jump_table)) && !target_pure_code" - " - { - enum insn_code code; ---- a/gcc/config/arm/arm.opt -+++ b/gcc/config/arm/arm.opt -@@ -193,6 +193,10 @@ - Target Report Mask(INTERWORK) - Support calls between Thumb and ARM instruction sets. - -+minline-thumb1-jumptable -+Target Report Var(inline_thumb1_jump_table) -+Inline Thumb1 Jump table code -+ - mtls-dialect= - Target RejectNegative Joined Enum(tls_type) Var(target_tls_dialect) Init(TLS_GNU) - Specify thread local storage scheme. ---- a/gcc/config/arm/elf.h -+++ b/gcc/config/arm/elf.h -@@ -56,8 +56,7 @@ - #undef SUBSUBTARGET_EXTRA_SPECS - #define SUBSUBTARGET_EXTRA_SPECS - --#ifndef ASM_SPEC --#define ASM_SPEC "\ -+#define DEFAULT_ASM_SPEC "\ - %{mbig-endian:-EB} \ - %{mlittle-endian:-EL} \ - %(asm_cpu_spec) \ -@@ -66,6 +65,9 @@ - %{mthumb-interwork:-mthumb-interwork} \ - %{mfloat-abi=*} %{mfpu=*} \ - %(subtarget_extra_asm_spec)" -+ -+#ifndef ASM_SPEC -+#define ASM_SPEC DEFAULT_ASM_SPEC - #endif - - /* The ARM uses @ are a comment character so we need to redefine -@@ -95,8 +97,8 @@ - the code more efficient, but for Thumb-1 it's better to put them out of - band unless we are generating compressed tables. */ - #define JUMP_TABLES_IN_TEXT_SECTION \ -- ((TARGET_32BIT || (TARGET_THUMB && (optimize_size || flag_pic))) \ -- && !target_pure_code) -+ ((TARGET_32BIT || (TARGET_THUMB && !inline_thumb1_jump_table \ -+ && (optimize_size || flag_pic))) && !target_pure_code) - - #ifndef LINK_SPEC - #define LINK_SPEC "%{mbig-endian:-EB} %{mlittle-endian:-EL} -X" ---- a/gcc/config/arm/linux-eabi.h -+++ b/gcc/config/arm/linux-eabi.h -@@ -108,11 +108,16 @@ - #define CC1_SPEC \ - LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC " " ASAN_CC1_SPEC, \ - GNU_USER_TARGET_CC1_SPEC " " ASAN_CC1_SPEC " " \ -- ANDROID_CC1_SPEC) -+ ANDROID_CC1_SPEC("-fpic")) - - #define CC1PLUS_SPEC \ - LINUX_OR_ANDROID_CC ("", ANDROID_CC1PLUS_SPEC) - -+#undef ASM_SPEC -+#define ASM_SPEC \ -+ LINUX_OR_ANDROID_CC (DEFAULT_ASM_SPEC, \ -+ DEFAULT_ASM_SPEC " " ANDROID_ASM_SPEC) -+ - #undef LIB_SPEC - #define LIB_SPEC \ - LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ ---- a/gcc/config/i386/gnu-user.h -+++ b/gcc/config/i386/gnu-user.h -@@ -65,9 +65,14 @@ - When the -shared link option is used a final link is not being - done. */ - -+#undef ANDROID_TARGET_CC1_SPEC -+#define ANDROID_TARGET_CC1_SPEC \ -+ " -mssse3 -fno-short-enums " \ -+ - #undef ASM_SPEC - #define ASM_SPEC \ -- "--32 %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}}" -+ "--32 %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}} " \ -+ LINUX_OR_ANDROID_CC ("", ANDROID_ASM_SPEC) - - #undef SUBTARGET_EXTRA_SPECS - #define SUBTARGET_EXTRA_SPECS \ ---- a/gcc/config/i386/gnu-user64.h -+++ b/gcc/config/i386/gnu-user64.h -@@ -46,6 +46,11 @@ - #define SPEC_X32 "mx32" - #endif - -+#undef ANDROID_TARGET_CC1_SPEC -+#define ANDROID_TARGET_CC1_SPEC \ -+ "%{m32:-mssse3 -fno-short-enums}" \ -+ "%{!m32:-msse4.2 -mpopcnt}" -+ - #undef ASM_SPEC - #define ASM_SPEC "%{" SPEC_32 ":--32} \ - %{" SPEC_64 ":--64} \ ---- a/gcc/config/i386/linux-common.h -+++ b/gcc/config/i386/linux-common.h -@@ -30,7 +30,13 @@ - #undef CC1_SPEC - #define CC1_SPEC \ - LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC, \ -- GNU_USER_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC) -+ GNU_USER_TARGET_CC1_SPEC \ -+ ANDROID_TARGET_CC1_SPEC \ -+ " " \ -+ ANDROID_CC1_SPEC("-fPIC")) -+ -+#define CC1PLUS_SPEC \ -+ LINUX_OR_ANDROID_CC ("", ANDROID_CC1PLUS_SPEC) - - #undef LINK_SPEC - #define LINK_SPEC \ ---- a/gcc/config/linux-android.h -+++ b/gcc/config/linux-android.h -@@ -38,15 +38,18 @@ - "%{" NOANDROID "|tno-android-ld:" LINUX_SPEC ";:" ANDROID_SPEC "}" - - #define ANDROID_LINK_SPEC \ -- "%{shared: -Bsymbolic}" -+ "%{shared: -Bsymbolic} -z noexecstack -z relro -z now" - --#define ANDROID_CC1_SPEC \ -+#define ANDROID_CC1_SPEC(ANDROID_PIC_DEFAULT) \ - "%{!mglibc:%{!muclibc:%{!mbionic: -mbionic}}} " \ -- "%{!fno-pic:%{!fno-PIC:%{!fpic:%{!fPIC: -fPIC}}}}" -+ "%{!fno-pic:%{!fno-PIC:%{!fpic:%{!fPIC: " ANDROID_PIC_DEFAULT "}}}}" - - #define ANDROID_CC1PLUS_SPEC \ -- "%{!fexceptions:%{!fno-exceptions: -fno-exceptions}} " \ -- "%{!frtti:%{!fno-rtti: -fno-rtti}}" -+ "%{!fexceptions:%{!fno-exceptions: -fexceptions}} " \ -+ "%{!frtti:%{!fno-rtti: -frtti}}" -+ -+#define ANDROID_ASM_SPEC \ -+ "--noexecstack" - - #define ANDROID_LIB_SPEC \ - "%{!static: -ldl}" ---- /dev/null -+++ b/gcc/config/mips/android.h -@@ -0,0 +1,49 @@ -+/* Target macros for mips*-*android* targets. -+ Copyright (C) 2014 Free Software Foundation, Inc. -+ -+This file is part of GCC. -+ -+GCC is free software; you can redistribute it and/or modify -+it under the terms of the GNU General Public License as published by -+the Free Software Foundation; either version 3, or (at your option) -+any later version. -+ -+GCC is distributed in the hope that it will be useful, -+but WITHOUT ANY WARRANTY; without even the implied warranty of -+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+GNU General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with GCC; see the file COPYING3. If not see -+<http://www.gnu.org/licenses/>. */ -+ -+#undef DRIVER_SELF_SPECS -+#define DRIVER_SELF_SPECS \ -+ /* Make sure a -mips option is present. This helps us to pick \ -+ the right multilib, and also makes the later specs easier \ -+ to write. */ \ -+ MIPS_ISA_LEVEL_SPEC, \ -+ \ -+ /* Infer the default float setting from -march. */ \ -+ MIPS_ARCH_FLOAT_SPEC, \ -+ \ -+ /* Infer the -msynci setting from -march if not explicitly set. */ \ -+ MIPS_ISA_SYNCI_SPEC, \ -+ \ -+ /* If no ABI option is specified, infer one from the ISA level \ -+ or -mgp setting. */ \ -+ "%{!mabi=*: %{" MIPS_32BIT_OPTION_SPEC ": -mabi=32;: -mabi=64}}", \ -+ \ -+ /* If no FP ABI option is specified, infer one from the \ -+ ABI/ISA level unless there is a conflicting option. */ \ -+ "%{!msoft-float: %{!msingle-float: %{!mfp*: %{!mmsa: %{mabi=32: %{" \ -+ MIPS_FPXX_OPTION_SPEC ": -mfpxx}}}}}}", \ -+ \ -+ /* If no odd-spreg option is specified, infer one from the ISA. */ \ -+ "%{!modd-spreg: %{mabi=32: %{mips32r6: -mno-odd-spreg}}}", \ -+ \ -+ /* Base SPECs. */ \ -+ BASE_DRIVER_SELF_SPECS, \ -+ \ -+ /* Use the standard linux specs for everything else. */ \ -+ LINUX_DRIVER_SELF_SPECS ---- a/gcc/config/mips/gnu-user.h -+++ b/gcc/config/mips/gnu-user.h -@@ -36,6 +36,7 @@ - /* The GNU C++ standard library requires this. */ \ - if (c_dialect_cxx ()) \ - builtin_define ("_GNU_SOURCE"); \ -+ ANDROID_TARGET_OS_CPP_BUILTINS(); \ - } while (0) - - #undef SUBTARGET_CPP_SPEC -@@ -71,7 +72,8 @@ - - #undef SUBTARGET_ASM_SPEC - #define SUBTARGET_ASM_SPEC \ -- "%{!mno-abicalls:%{mplt:-call_nonpic;:-KPIC}}" -+ "%{!mno-abicalls:%{mplt:-call_nonpic;:-KPIC}} " \ -+ LINUX_OR_ANDROID_CC ("", ANDROID_ASM_SPEC) - - /* The MIPS assembler has different syntax for .set. We set it to - .dummy to trap any errors. */ -@@ -120,7 +122,7 @@ - #endif - - #define LINUX_DRIVER_SELF_SPECS \ -- NO_SHARED_SPECS \ -+ LINUX_OR_ANDROID_CC(NO_SHARED_SPECS, "") \ - MARCH_MTUNE_NATIVE_SPECS, \ - /* -mplt has no effect without -mno-shared. Simplify later \ - specs handling by removing a redundant option. */ \ ---- a/gcc/config/mips/linux-common.h -+++ b/gcc/config/mips/linux-common.h -@@ -35,7 +35,7 @@ - #undef SUBTARGET_CC1_SPEC - #define SUBTARGET_CC1_SPEC \ - LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC, \ -- GNU_USER_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC) -+ GNU_USER_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC("-fpic")) - - #undef CC1PLUS_SPEC - #define CC1PLUS_SPEC \ ---- /dev/null -+++ b/gcc/config/mips/t-linux-android -@@ -0,0 +1,3 @@ -+MULTILIB_OPTIONS = mips32r2/mips32r6 -+MULTILIB_DIRNAMES = mips-r2 mips-r6 -+MULTILIB_OSDIRNAMES = ../libr2 ../libr6 ---- /dev/null -+++ b/gcc/config/mips/t-linux-android64 -@@ -0,0 +1,4 @@ -+MULTILIB_OPTIONS = mabi=32 mips32/mips32r2/mips32r6/mips64r2/mips64r6 -+MULTILIB_DIRNAMES = 32 mips-r1 mips-r2 mips-r6 mips64-r2 mips64-r6 -+MULTILIB_OSDIRNAMES = ../lib ../lib ../libr2 ../libr6 ../lib64r2 ../lib64 -+MULTILIB_REQUIRED = mabi=32/mips32 mabi=32/mips32r2 mabi=32/mips32r6 mips64r2 mips64r6 ---- a/libgcc/gthr-posix.h -+++ b/libgcc/gthr-posix.h -@@ -32,6 +32,19 @@ - #define __GTHREADS 1 - #define __GTHREADS_CXX0X 1 - -+/* The following should normally be in a different header file, -+ * but I couldn't find the right location. The point of the macro -+ * definition below is to prevent libsupc++ and libstdc++ to reference -+ * weak symbols in their static C++ constructors. Such code crashes -+ * when a shared object linked statically to these libraries is -+ * loaded on Android 2.1 (Eclair) and older platform releases, due -+ * to a dynamic linker bug. -+ */ -+#ifdef __ANDROID__ -+#undef GTHREAD_USE_WEAK -+#define GTHREAD_USE_WEAK 0 -+#endif -+ - #include <pthread.h> - - #if ((defined(_LIBOBJC) || defined(_LIBOBJC_WEAK)) \ ---- a/libstdc++-v3/configure -+++ b/libstdc++-v3/configure -@@ -78389,6 +78389,12 @@ - /* end confdefs.h. */ - #include <sys/syscall.h> - int lk; -+#if !defined(SYS_gettid) -+#define SYS_gettid __NR_gettid -+#endif -+#if !defined(SYS_futex) -+#define SYS_futex __NR_futex -+#endif - int - main () - { -@@ -78447,6 +78453,12 @@ - /* end confdefs.h. */ - #include <sys/syscall.h> - int lk; -+#if !defined(SYS_gettid) -+#define SYS_gettid __NR_gettid -+#endif -+#if !defined(SYS_futex) -+#define SYS_futex __NR_futex -+#endif - int - main () - { ---- a/libstdc++-v3/include/bits/locale_facets.h -+++ b/libstdc++-v3/include/bits/locale_facets.h -@@ -47,6 +47,20 @@ - #include <ext/numeric_traits.h> - #include <bits/streambuf_iterator.h> - -+#if !__clang__ && __GNUC__ == 4 && __GNUC_MINOR__ == 9 && __i386__ -+// CrystaX: for some reason, x86 gcc-4.9 makes ctype<char>::do_widen() and -+// ctype<char>::_M_widen_init() methods working wrong if optimization enabled. -+// For ctype<char>::do_widen(), values of passed arguments (__lo, __hi and __to) -+// are completely messed up and don't correspond to passed values. In case if -+// we disable optimization for those methods, things become correct so we apply -+// this workaround here for a time. -+// TODO: figure out what exactly wrong here - is it bug in GCC optimization -+// algorithm or smth else? -+#define __CRYSTAX_X86_DONT_OPTIMIZE __attribute__((optimize(0))) -+#else -+#define __CRYSTAX_X86_DONT_OPTIMIZE -+#endif -+ - namespace std _GLIBCXX_VISIBILITY(default) - { - _GLIBCXX_BEGIN_NAMESPACE_VERSION -@@ -1102,7 +1116,7 @@ - * @return @a __hi. - */ - virtual const char* -- do_widen(const char* __lo, const char* __hi, char_type* __to) const -+ do_widen(const char* __lo, const char* __hi, char_type* __to) const __CRYSTAX_X86_DONT_OPTIMIZE - { - __builtin_memcpy(__to, __lo, __hi - __lo); - return __hi; -@@ -1163,7 +1177,7 @@ - - private: - void _M_narrow_init() const; -- void _M_widen_init() const; -+ void _M_widen_init() const __CRYSTAX_X86_DONT_OPTIMIZE; - }; - - #ifdef _GLIBCXX_USE_WCHAR_T ---- a/libstdc++-v3/libsupc++/guard.cc -+++ b/libstdc++-v3/libsupc++/guard.cc -@@ -33,7 +33,12 @@ - #if defined(__GTHREADS) && defined(__GTHREAD_HAS_COND) \ - && (ATOMIC_INT_LOCK_FREE > 1) && defined(_GLIBCXX_HAVE_LINUX_FUTEX) - # include <climits> -+#if defined(__ANDROID__) -+# include <sys/syscall.h> -+# define SYS_futex __NR_futex -+#else - # include <syscall.h> -+#endif - # include <unistd.h> - # define _GLIBCXX_USE_FUTEX - # define _GLIBCXX_FUTEX_WAIT 0 diff --git a/packages/gcc-linaro/6.4-2017.11/0021-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0021-crystax.patch deleted file mode 100644 index f1f9eb1..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0021-crystax.patch +++ /dev/null @@ -1,27 +0,0 @@ -commit 9f057b62caafe08c968103d39b5df82486a175c2 -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Thu Aug 13 16:11:54 2015 +0300 - - [android] Add additional multilib option: mfloat-abi=hard - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config/arm/t-linux-androideabi | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - ---- a/gcc/config/arm/t-linux-androideabi -+++ b/gcc/config/arm/t-linux-androideabi -@@ -1,8 +1,9 @@ --MULTILIB_OPTIONS = march=armv7-a mthumb --MULTILIB_DIRNAMES = armv7-a thumb --MULTILIB_EXCEPTIONS = -+MULTILIB_OPTIONS = march=armv7-a mthumb mfloat-abi=hard -+MULTILIB_DIRNAMES = armv7-a thumb hard -+MULTILIB_EXCEPTIONS = mfloat-abi=hard* mthumb/mfloat-abi=hard* - MULTILIB_MATCHES = - MULTILIB_OSDIRNAMES = -+MULTILIB_EXTRA_OPTS = Wl,--no-warn-mismatch - - # The "special" multilib can be used to build native applications for Android, - # as opposed to native shared libraries that are then called via JNI. diff --git a/packages/gcc-linaro/6.4-2017.11/0022-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0022-crystax.patch deleted file mode 100644 index 64d1126..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0022-crystax.patch +++ /dev/null @@ -1,293 +0,0 @@ -commit 44a81ebb7698dac41ffa7acd5e0cc1578e5ab1fd -Author: H.J. Lu <hongjiu.lu@intel.com> -Date: Mon Apr 14 15:59:47 2014 -0700 - - [android] Always enable --eh-frame-hdr for static executable - - See 5e6cdf76af295c9a39b695ca228cff675e8ff4ae and - 23e3137ee2897464b051599b85a09f130d3ad05d - - Change-Id: Ibda473188e5a10f2a0592f2494ad00ad1f91e04b - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config.in | 6 +++++ - gcc/config/alpha/elf.h | 4 +++ - gcc/config/freebsd.h | 4 +++ - gcc/config/gnu-user.h | 4 +++ - gcc/config/openbsd.h | 4 +++ - gcc/config/rs6000/sysv4.h | 6 ++++- - gcc/config/sol2.h | 4 +++ - gcc/configure | 36 +++++++++++++++++++++++++++++++++ - gcc/configure.ac | 29 ++++++++++++++++++++++++++ - gcc/testsuite/g++.dg/eh/spec3-static.C | 25 ++++++++++++++++++++++ - libgcc/crtstuff.c | 11 ++++++---- - 11 files changed, 128 insertions(+), 5 deletions(-) - ---- a/gcc/config.in -+++ b/gcc/config.in -@@ -2144,6 +2144,12 @@ - #endif - - -+/* Define if your system supports PT_GNU_EH_FRAME for static executable. */ -+#ifndef USED_FOR_TARGET -+#undef USE_EH_FRAME_HDR_FOR_STATIC -+#endif -+ -+ - /* Define to 1 if the 'long long' type is wider than 'long' but still - efficiently supported by the host hardware. */ - #ifndef USED_FOR_TARGET ---- a/gcc/config/alpha/elf.h -+++ b/gcc/config/alpha/elf.h -@@ -168,5 +168,9 @@ - I imagine that other systems will catch up. In the meantime, it - doesn't harm to make sure that the data exists to be used later. */ - #if defined(HAVE_LD_EH_FRAME_HDR) -+#ifdef USE_EH_FRAME_HDR_FOR_STATIC -+#define LINK_EH_SPEC "--eh-frame-hdr " -+#else - #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -+#endif ---- a/gcc/config/freebsd.h -+++ b/gcc/config/freebsd.h -@@ -45,8 +45,12 @@ - #define LIB_SPEC FBSD_LIB_SPEC - - #if defined(HAVE_LD_EH_FRAME_HDR) -+#ifdef USE_EH_FRAME_HDR_FOR_STATIC -+#define LINK_EH_SPEC "--eh-frame-hdr " -+#else - #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -+#endif - - #ifdef TARGET_LIBC_PROVIDES_SSP - #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \ ---- a/gcc/config/gnu-user.h -+++ b/gcc/config/gnu-user.h -@@ -132,8 +132,12 @@ - #define LIB_SPEC GNU_USER_TARGET_LIB_SPEC - - #if defined(HAVE_LD_EH_FRAME_HDR) -+#ifdef USE_EH_FRAME_HDR_FOR_STATIC -+#define LINK_EH_SPEC "--eh-frame-hdr " -+#else - #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -+#endif - - #undef LINK_GCC_C_SEQUENCE_SPEC - #define LINK_GCC_C_SEQUENCE_SPEC \ ---- a/gcc/config/openbsd.h -+++ b/gcc/config/openbsd.h -@@ -136,8 +136,12 @@ - #define LIB_SPEC OBSD_LIB_SPEC - - #if defined(HAVE_LD_EH_FRAME_HDR) -+#ifdef USE_EH_FRAME_HDR_FOR_STATIC -+#define LINK_EH_SPEC "--eh-frame-hdr " -+#else - #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " - #endif -+#endif - - #undef LIB_SPEC - #define LIB_SPEC OBSD_LIB_SPEC ---- a/gcc/config/rs6000/sysv4.h -+++ b/gcc/config/rs6000/sysv4.h -@@ -810,7 +810,11 @@ - -dynamic-linker " GNU_USER_DYNAMIC_LINKER "}}" - - #if defined(HAVE_LD_EH_FRAME_HDR) --# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " -+# ifdef USE_EH_FRAME_HDR_FOR_STATIC -+# define LINK_EH_SPEC "--eh-frame-hdr " -+# else -+# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " -+# endif - #endif - - #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \ ---- a/gcc/config/sol2.h -+++ b/gcc/config/sol2.h -@@ -347,7 +347,11 @@ - /* Solaris 11 build 135+ implements dl_iterate_phdr. GNU ld needs - --eh-frame-hdr to create the required .eh_frame_hdr sections. */ - #if defined(HAVE_LD_EH_FRAME_HDR) && defined(TARGET_DL_ITERATE_PHDR) -+#ifdef USE_EH_FRAME_HDR_FOR_STATIC -+#define LINK_EH_SPEC "--eh-frame-hdr " -+#else - #define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " -+#endif - #endif /* HAVE_LD_EH_FRAME && TARGET_DL_ITERATE_PHDR */ - #endif - ---- a/gcc/configure -+++ b/gcc/configure -@@ -934,6 +934,7 @@ - enable_fix_cortex_a53_843419 - with_glibc_version - enable_gnu_unique_object -+enable_eh_frame_hdr_for_static - enable_linker_build_id - enable_default_ssp - with_long_double_128 -@@ -1670,6 +1671,9 @@ - --enable-gnu-unique-object - enable the use of the @gnu_unique_object ELF - extension on glibc systems -+ --enable-eh-frame-hdr-for-static -+ enable linker PT_GNU_EH_FRAME support for static -+ executable - --enable-linker-build-id - compiler will always pass --build-id to linker - --enable-default-ssp enable Stack Smashing Protection as default -@@ -27786,6 +27790,38 @@ - - $as_echo "#define HAVE_LD_EH_FRAME_HDR 1" >>confdefs.h - -+ # Check whether --enable-eh-frame-hdr-for-static was given. -+if test "${enable_eh_frame_hdr_for_static+set}" = set; then : -+ enableval=$enable_eh_frame_hdr_for_static; case $enable_eh_frame_hdr_for_static in -+ yes | no) ;; -+ *) as_fn_error "'$enable_eh_frame_hdr_for_static' is an invalid -+value for --enable-eh-frame-hdr-for-static. -+Valid choices are 'yes' and 'no'." "$LINENO" 5 ;; -+ esac -+else -+ # Only support for glibc 2.3.0 or higher with AT_PHDR/AT_PHNUM from -+# Linux kernel. -+ if test x$host = x$build -a x$host = x$target && -+ ldd --version 2>&1 >/dev/null && -+ glibcver=`ldd --version 2>/dev/null | sed 's/.* //;q'`; then -+ glibcmajor=`expr "$glibcver" : "\([0-9]*\)"` -+ glibcminor=`expr "$glibcver" : "[2-9]*\.\([0-9]*\)"` -+ glibcnum=`expr $glibcmajor \* 1000 + $glibcminor` -+ if test "$glibcnum" -ge 2003 ; then -+ auvx=`LD_SHOW_AUXV=1 ldd 2>/dev/null` -+ if echo "$auvx" | grep AT_PHDR > /dev/null && -+ echo "$auvx" | grep AT_PHNUM > /dev/null; then -+ enable_eh_frame_hdr_for_static=yes -+ fi -+ fi -+ fi -+fi -+ -+ if test x$enable_eh_frame_hdr_for_static = xyes; then -+ -+$as_echo "#define USE_EH_FRAME_HDR_FOR_STATIC 1" >>confdefs.h -+ -+ fi - fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_eh_frame_hdr" >&5 - $as_echo "$gcc_cv_ld_eh_frame_hdr" >&6; } ---- a/gcc/configure.ac -+++ b/gcc/configure.ac -@@ -4861,6 +4861,35 @@ - if test x"$gcc_cv_ld_eh_frame_hdr" = xyes; then - AC_DEFINE(HAVE_LD_EH_FRAME_HDR, 1, - [Define if your linker supports .eh_frame_hdr.]) -+ AC_ARG_ENABLE(eh-frame-hdr-for-static, -+ [AS_HELP_STRING([--enable-eh-frame-hdr-for-static], -+ [enable linker PT_GNU_EH_FRAME support for static executable])], -+ [case $enable_eh_frame_hdr_for_static in -+ yes | no) ;; -+ *) AC_MSG_ERROR(['$enable_eh_frame_hdr_for_static' is an invalid -+value for --enable-eh-frame-hdr-for-static. -+Valid choices are 'yes' and 'no'.]) ;; -+ esac], -+# Only support for glibc 2.3.0 or higher with AT_PHDR/AT_PHNUM from -+# Linux kernel. -+ [[if test x$host = x$build -a x$host = x$target && -+ ldd --version 2>&1 >/dev/null && -+ glibcver=`ldd --version 2>/dev/null | sed 's/.* //;q'`; then -+ glibcmajor=`expr "$glibcver" : "\([0-9]*\)"` -+ glibcminor=`expr "$glibcver" : "[2-9]*\.\([0-9]*\)"` -+ glibcnum=`expr $glibcmajor \* 1000 + $glibcminor` -+ if test "$glibcnum" -ge 2003 ; then -+ auvx=`LD_SHOW_AUXV=1 ldd 2>/dev/null` -+ if echo "$auvx" | grep AT_PHDR > /dev/null && -+ echo "$auvx" | grep AT_PHNUM > /dev/null; then -+ enable_eh_frame_hdr_for_static=yes -+ fi -+ fi -+ fi]]) -+ if test x$enable_eh_frame_hdr_for_static = xyes; then -+ AC_DEFINE(USE_EH_FRAME_HDR_FOR_STATIC, 1, -+[Define if your system supports PT_GNU_EH_FRAME for static executable.]) -+ fi - fi - AC_MSG_RESULT($gcc_cv_ld_eh_frame_hdr) - ---- /dev/null -+++ b/gcc/testsuite/g++.dg/eh/spec3-static.C -@@ -0,0 +1,25 @@ -+// PR c++/4381 -+// Test that exception-specs work properly for classes with virtual bases. -+ -+// { dg-do run } -+// { dg-options "-static" } -+ -+class Base {}; -+ -+struct A : virtual public Base -+{ -+ A() {} -+}; -+ -+struct B {}; -+ -+void func() throw (B,A) -+{ -+ throw A(); -+} -+ -+int main(void) -+{ -+ try { func(); } -+ catch (A& a) { } -+} ---- a/libgcc/crtstuff.c -+++ b/libgcc/crtstuff.c -@@ -88,7 +88,8 @@ - #if defined(OBJECT_FORMAT_ELF) \ - && !defined(OBJECT_FORMAT_FLAT) \ - && defined(HAVE_LD_EH_FRAME_HDR) \ -- && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ -+ && !defined(inhibit_libc) \ -+ && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ - && defined(BSD_DL_ITERATE_PHDR_AVAILABLE) - #include <link.h> - # define USE_PT_GNU_EH_FRAME -@@ -97,7 +98,8 @@ - #if defined(OBJECT_FORMAT_ELF) \ - && !defined(OBJECT_FORMAT_FLAT) \ - && defined(HAVE_LD_EH_FRAME_HDR) && defined(TARGET_DL_ITERATE_PHDR) \ -- && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ -+ && !defined(inhibit_libc) \ -+ && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ - && defined(__sun__) && defined(__svr4__) - #include <link.h> - # define USE_PT_GNU_EH_FRAME -@@ -106,7 +108,8 @@ - #if defined(OBJECT_FORMAT_ELF) \ - && !defined(OBJECT_FORMAT_FLAT) \ - && defined(HAVE_LD_EH_FRAME_HDR) \ -- && !defined(inhibit_libc) && !defined(CRTSTUFFT_O) \ -+ && !defined(inhibit_libc) \ -+ && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ - && defined(__GLIBC__) && __GLIBC__ >= 2 - #include <link.h> - /* uClibc pretends to be glibc 2.2 and DT_CONFIG is defined in its link.h. -@@ -121,7 +124,7 @@ - #if defined(OBJECT_FORMAT_ELF) \ - && !defined(OBJECT_FORMAT_FLAT) \ - && defined(HAVE_LD_EH_FRAME_HDR) \ -- && !defined(CRTSTUFFT_O) \ -+ && (defined(USE_EH_FRAME_HDR_FOR_STATIC) || !defined(CRTSTUFFT_O)) \ - && defined(inhibit_libc) \ - && (defined(__GLIBC__) || defined(__gnu_linux__) || defined(__GNU__)) - /* On systems using glibc, an inhibit_libc build of libgcc is only diff --git a/packages/gcc-linaro/6.4-2017.11/0023-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0023-crystax.patch deleted file mode 100644 index 34df80a..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0023-crystax.patch +++ /dev/null @@ -1,22 +0,0 @@ -commit 778a9ef107f51544d583f110e92b75f4d9d79117 -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Thu Aug 20 19:11:07 2015 +0300 - - [android] Don't use PIE copyrelocs for x86/x86_64 - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config/i386/i386.c | 1 + - 1 file changed, 1 insertion(+) - ---- a/gcc/config/i386/i386.c -+++ b/gcc/config/i386/i386.c -@@ -14690,6 +14690,7 @@ - else if (!SYMBOL_REF_FAR_ADDR_P (op0) - && (SYMBOL_REF_LOCAL_P (op0) - || (HAVE_LD_PIE_COPYRELOC -+ && !TARGET_HAS_BIONIC - && flag_pie - && !SYMBOL_REF_WEAK (op0) - && !SYMBOL_REF_FUNCTION_P (op0))) diff --git a/packages/gcc-linaro/6.4-2017.11/0024-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0024-crystax.patch deleted file mode 100644 index 8f2eb43..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0024-crystax.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit dbeae1190cabad83999f2540523f045acc1bb4ec -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Fri Aug 21 17:41:59 2015 +0300 - - [android] Always use gthr-posix.h instead of gthr-default.h - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - libgcc/gthr.h | 4 ++++ - 1 file changed, 4 insertions(+) - ---- a/libgcc/gthr.h -+++ b/libgcc/gthr.h -@@ -145,7 +145,11 @@ - #define GTHREAD_USE_WEAK 1 - #endif - #endif -+#if __ANDROID__ -+#include "gthr-posix.h" -+#else - #include "gthr-default.h" -+#endif - - #ifndef HIDE_EXPORTS - #pragma GCC visibility pop diff --git a/packages/gcc-linaro/6.4-2017.11/0025-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0025-crystax.patch deleted file mode 100644 index f555f27..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0025-crystax.patch +++ /dev/null @@ -1,33 +0,0 @@ -commit 8a66d422721ae5999737d7825701ff22097d287b -Author: Andrew Hsieh <andrewhsieh@google.com> -Date: Mon Apr 14 21:05:51 2014 -0700 - - [android] Fix ARM generates insufficient alignment for NEON vst/vld - - See d909af3e2469aad87d5c3e79b93c778fd26c03a9 - - Change-Id: Ie1de9f946f397196bb6f1623f5add86933739484 - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config/arm/arm.c | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - ---- a/gcc/config/arm/arm.c -+++ b/gcc/config/arm/arm.c -@@ -22178,9 +22178,13 @@ - memsize = MEM_SIZE (x); - - /* Only certain alignment specifiers are supported by the hardware. */ -- if (memsize == 32 && (align % 32) == 0) -+ /* Note that ARM EABI only guarentees 8-byte stack alignment. While GCC -+ honors stricter alignment of composite type in user code, it doesn't -+ observe the alignment of memory passed as an extra argument for function -+ returning large composite type. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57271 */ -+ if (memsize == 32 && (align % 32) == 0 && !TARGET_AAPCS_BASED) - align_bits = 256; -- else if ((memsize == 16 || memsize == 32) && (align % 16) == 0) -+ else if ((memsize == 16 || memsize == 32) && (align % 16) == 0 && !TARGET_AAPCS_BASED) - align_bits = 128; - else if (memsize >= 8 && (align % 8) == 0) - align_bits = 64; diff --git a/packages/gcc-linaro/6.4-2017.11/0026-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0026-crystax.patch deleted file mode 100644 index 8c21a1c..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0026-crystax.patch +++ /dev/null @@ -1,23 +0,0 @@ -commit 89d27bc45ee7325dcfff6748da0f8b9c1dc1f234 -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Sat Aug 22 09:55:55 2015 +0300 - - [android][i386] Remove throw() declaration from posix_memalign() proto - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config/i386/pmm_malloc.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/gcc/config/i386/pmm_malloc.h -+++ b/gcc/config/i386/pmm_malloc.h -@@ -31,7 +31,7 @@ - #ifndef __cplusplus - extern int posix_memalign (void **, size_t, size_t); - #else --extern "C" int posix_memalign (void **, size_t, size_t) throw (); -+extern "C" int posix_memalign (void **, size_t, size_t); - #endif - - static __inline void * diff --git a/packages/gcc-linaro/6.4-2017.11/0027-crystax.patch b/packages/gcc-linaro/6.4-2017.11/0027-crystax.patch deleted file mode 100644 index ccb81fd..0000000 --- a/packages/gcc-linaro/6.4-2017.11/0027-crystax.patch +++ /dev/null @@ -1,34 +0,0 @@ -commit 9ae82f7cfc1073820092dd9f957559667e77db0d -Author: Dmitry Moskalchuk <dm@crystax.net> -Date: Tue Aug 25 09:36:42 2015 +0300 - - [android] Explicitly make _Unwind_Resume visible for arm64/mips64 - - Signed-off-by: Dmitry Moskalchuk <dm@crystax.net> - ---- - gcc/config/aarch64/aarch64-linux-android.h | 4 ++++ - gcc/config/mips/linux-common.h | 4 ++++ - 2 files changed, 8 insertions(+) - ---- a/gcc/config/aarch64/aarch64-linux-android.h -+++ b/gcc/config/aarch64/aarch64-linux-android.h -@@ -56,4 +56,8 @@ - #define ENDFILE_SPEC \ - LINUX_OR_ANDROID_LD (GNU_USER_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) - -+#ifdef IN_LIBGCC2 -+#define LIBGCC2_UNWIND_ATTRIBUTE __attribute__((visibility("default"))) -+#endif -+ - #endif /* GCC_AARCH64_LINUX_ANDROID_H */ ---- a/gcc/config/mips/linux-common.h -+++ b/gcc/config/mips/linux-common.h -@@ -62,3 +62,7 @@ - - /* The default value isn't sufficient in 64-bit mode. */ - #define STACK_CHECK_PROTECT (TARGET_64BIT ? 16 * 1024 : 12 * 1024) -+ -+#ifdef IN_LIBGCC2 -+#define LIBGCC2_UNWIND_ATTRIBUTE __attribute__((visibility("default"))) -+#endif diff --git a/packages/gcc-linaro/6.4-2017.11/chksum b/packages/gcc-linaro/6.4-2017.11/chksum deleted file mode 100644 index 1531c08..0000000 --- a/packages/gcc-linaro/6.4-2017.11/chksum +++ /dev/null @@ -1,4 +0,0 @@ -md5 gcc-linaro-6.4-2017.11.tar.xz 0620b19d8f58828b64c67513fb7c3476 -sha1 gcc-linaro-6.4-2017.11.tar.xz 2f4a43b52e61215a4f4b608dc6a26dcd9fb61796 -sha256 gcc-linaro-6.4-2017.11.tar.xz 3c17387177f15b855070ca42ed7f4f16b6b151b9216a445fd64a4463653492b3 -sha512 gcc-linaro-6.4-2017.11.tar.xz f5f7803f16d4c3ca3f55b4dd8c89f9e2609eb2421ffa520c0adedc657b5bf47a9b1b80be627b7cf052817ffd913ad32423fe2091adcc7975d72149d443da9d01 diff --git a/packages/gcc-linaro/6.4-2017.11/version.desc b/packages/gcc-linaro/6.4-2017.11/version.desc deleted file mode 100644 index e69de29..0000000 --- a/packages/gcc-linaro/6.4-2017.11/version.desc +++ /dev/null |