gcc 7.2.0: fix 970-crystax.patch offsets

This commit is contained in:
Sergey Korolev 2017-11-05 22:09:40 +03:00
parent fbbbaac5fe
commit fd64d3775c

View File

@ -8,11 +8,11 @@ Date: Wed Jul 29 11:28:29 2015 +0300
[Edited: keep libstdc++, drop libcrystax-related modifications]
diff --git a/gcc/config.gcc b/gcc/config.gcc
index f66e48cd1..1c253496b 100644
index a9196cd..5f7fed2 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -942,13 +942,17 @@ aarch64*-*-elf | aarch64*-*-rtems*)
TM_MULTILIB_CONFIG=`echo $TM_MULTILIB_CONFIG | sed 's/^,//'`
@@ -961,13 +961,17 @@ aarch64*-*-freebsd*)
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"
@ -30,7 +30,7 @@ index f66e48cd1..1c253496b 100644
esac
aarch64_multilibs="${with_multilib_list}"
if test "$aarch64_multilibs" = "default"; then
@@ -2055,6 +2059,17 @@ mips*-*-linux*) # Linux MIPS, either endian.
@@ -2079,6 +2083,17 @@ mips*-*-linux*) # Linux MIPS, either endian.
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
@ -50,7 +50,7 @@ index f66e48cd1..1c253496b 100644
;;
diff --git a/gcc/config/aarch64/aarch64-linux-android.h b/gcc/config/aarch64/aarch64-linux-android.h
new file mode 100644
index 000000000..db1288fd0
index 0000000..91d235f
--- /dev/null
+++ b/gcc/config/aarch64/aarch64-linux-android.h
@@ -0,0 +1,59 @@
@ -114,7 +114,7 @@ index 000000000..db1288fd0
+
+#endif /* GCC_AARCH64_LINUX_ANDROID_H */
diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
index 5fcaa59a3..6864195ee 100644
index c45fc1d..4dc6211 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -21,7 +21,14 @@
@ -134,10 +134,10 @@ index 5fcaa59a3..6864195ee 100644
#undef MUSL_DYNAMIC_LINKER
#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-aarch64%{mbig-endian:_be}%{mabi=ilp32:_ilp32}.so.1"
diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h
index ad123dde9..97b059de6 100644
index b3c6db0..c646613 100644
--- a/gcc/config/arm/arm.h
+++ b/gcc/config/arm/arm.h
@@ -1888,10 +1888,11 @@ enum arm_auto_incmodes
@@ -1878,10 +1878,11 @@ enum arm_auto_incmodes
#define CASE_VECTOR_PC_RELATIVE (TARGET_THUMB2 \
|| (TARGET_THUMB1 \
@ -151,10 +151,10 @@ index ad123dde9..97b059de6 100644
? (ADDR_DIFF_VEC_FLAGS (body).offset_unsigned = 1, QImode) \
: min >= -256 && max < 256 \
diff --git a/gcc/config/arm/arm.md b/gcc/config/arm/arm.md
index 47171b996..eb22d1181 100644
index f9365cd..804ba8e 100644
--- a/gcc/config/arm/arm.md
+++ b/gcc/config/arm/arm.md
@@ -8179,7 +8179,7 @@
@@ -8668,7 +8668,7 @@
(match_operand:SI 2 "const_int_operand" "") ; total range
(match_operand:SI 3 "" "") ; table label
(match_operand:SI 4 "" "")] ; Out of range label
@ -164,7 +164,7 @@ index 47171b996..eb22d1181 100644
{
enum insn_code code;
diff --git a/gcc/config/arm/arm.opt b/gcc/config/arm/arm.opt
index 0ebe01743..772453889 100644
index 9f8116d..bb3e44d 100644
--- a/gcc/config/arm/arm.opt
+++ b/gcc/config/arm/arm.opt
@@ -193,6 +193,10 @@ mthumb-interwork
@ -179,7 +179,7 @@ index 0ebe01743..772453889 100644
Target RejectNegative Joined Enum(tls_type) Var(target_tls_dialect) Init(TLS_GNU)
Specify thread local storage scheme.
diff --git a/gcc/config/arm/elf.h b/gcc/config/arm/elf.h
index 77f30554d..32158ed65 100644
index f119b87..83e5343 100644
--- a/gcc/config/arm/elf.h
+++ b/gcc/config/arm/elf.h
@@ -56,8 +56,7 @@
@ -202,23 +202,21 @@ index 77f30554d..32158ed65 100644
#endif
/* The ARM uses @ are a comment character so we need to redefine
@@ -104,8 +106,9 @@
@@ -95,7 +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)
&& !target_pure_code)
#ifndef LINK_SPEC
#define LINK_SPEC "%{mbig-endian:-EB} %{mlittle-endian:-EL} -X"
diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
index ace84816e..8c8fa6553 100644
index f794e8f..d19529b 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -108,11 +108,16 @@
@@ -102,11 +102,16 @@
#define CC1_SPEC \
LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC " " ASAN_CC1_SPEC, \
GNU_USER_TARGET_CC1_SPEC " " ASAN_CC1_SPEC " " \
@ -237,7 +235,7 @@ index ace84816e..8c8fa6553 100644
#define LIB_SPEC \
LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \
diff --git a/gcc/config/i386/gnu-user.h b/gcc/config/i386/gnu-user.h
index fee33a3ef..22fb2ced9 100644
index a4c88f1..1f76b3f 100644
--- a/gcc/config/i386/gnu-user.h
+++ b/gcc/config/i386/gnu-user.h
@@ -65,9 +65,14 @@ along with GCC; see the file COPYING3. If not see
@ -257,7 +255,7 @@ index fee33a3ef..22fb2ced9 100644
#undef SUBTARGET_EXTRA_SPECS
#define SUBTARGET_EXTRA_SPECS \
diff --git a/gcc/config/i386/gnu-user64.h b/gcc/config/i386/gnu-user64.h
index 7a02a7eb4..cac4179bc 100644
index 39f5ef6..bb43280 100644
--- a/gcc/config/i386/gnu-user64.h
+++ b/gcc/config/i386/gnu-user64.h
@@ -46,6 +46,11 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@ -273,7 +271,7 @@ index 7a02a7eb4..cac4179bc 100644
#define ASM_SPEC "%{" SPEC_32 ":--32} \
%{" SPEC_64 ":--64} \
diff --git a/gcc/config/i386/linux-common.h b/gcc/config/i386/linux-common.h
index 4b9910fa9..3b11ed086 100644
index 6380639..ea6fa1b 100644
--- a/gcc/config/i386/linux-common.h
+++ b/gcc/config/i386/linux-common.h
@@ -30,7 +30,13 @@ along with GCC; see the file COPYING3. If not see
@ -292,10 +290,10 @@ index 4b9910fa9..3b11ed086 100644
#undef LINK_SPEC
#define LINK_SPEC \
diff --git a/gcc/config/linux-android.h b/gcc/config/linux-android.h
index 301a41ccd..9623c88d0 100644
index 19c55c3..468303d 100644
--- a/gcc/config/linux-android.h
+++ b/gcc/config/linux-android.h
@@ -38,15 +39,18 @@
@@ -38,15 +38,18 @@
"%{" NOANDROID "|tno-android-ld:" LINUX_SPEC ";:" ANDROID_SPEC "}"
#define ANDROID_LINK_SPEC \
@ -321,7 +319,7 @@ index 301a41ccd..9623c88d0 100644
"%{!static: -ldl}"
diff --git a/gcc/config/mips/android.h b/gcc/config/mips/android.h
new file mode 100644
index 000000000..32c539c8d
index 0000000..32c539c
--- /dev/null
+++ b/gcc/config/mips/android.h
@@ -0,0 +1,49 @@
@ -375,7 +373,7 @@ index 000000000..32c539c8d
+ /* Use the standard linux specs for everything else. */ \
+ LINUX_DRIVER_SELF_SPECS
diff --git a/gcc/config/mips/gnu-user.h b/gcc/config/mips/gnu-user.h
index 15b549c08..4a2816014 100644
index af45d18..b3e89df 100644
--- a/gcc/config/mips/gnu-user.h
+++ b/gcc/config/mips/gnu-user.h
@@ -36,6 +36,7 @@ along with GCC; see the file COPYING3. If not see
@ -406,7 +404,7 @@ index 15b549c08..4a2816014 100644
/* -mplt has no effect without -mno-shared. Simplify later \
specs handling by removing a redundant option. */ \
diff --git a/gcc/config/mips/linux-common.h b/gcc/config/mips/linux-common.h
index 8429a7ca2..8bfacf994 100644
index 6c8fda7..b8fae26 100644
--- a/gcc/config/mips/linux-common.h
+++ b/gcc/config/mips/linux-common.h
@@ -35,7 +35,7 @@ along with GCC; see the file COPYING3. If not see
@ -420,7 +418,7 @@ index 8429a7ca2..8bfacf994 100644
#define CC1PLUS_SPEC \
diff --git a/gcc/config/mips/t-linux-android b/gcc/config/mips/t-linux-android
new file mode 100644
index 000000000..39f512c81
index 0000000..39f512c
--- /dev/null
+++ b/gcc/config/mips/t-linux-android
@@ -0,0 +1,3 @@
@ -429,7 +427,7 @@ index 000000000..39f512c81
+MULTILIB_OSDIRNAMES = ../libr2 ../libr6
diff --git a/gcc/config/mips/t-linux-android64 b/gcc/config/mips/t-linux-android64
new file mode 100644
index 000000000..55cab7d62
index 0000000..55cab7d
--- /dev/null
+++ b/gcc/config/mips/t-linux-android64
@@ -0,0 +1,4 @@
@ -438,7 +436,7 @@ index 000000000..55cab7d62
+MULTILIB_OSDIRNAMES = ../lib ../lib ../libr2 ../libr6 ../lib64r2 ../lib64
+MULTILIB_REQUIRED = mabi=32/mips32 mabi=32/mips32r2 mabi=32/mips32r6 mips64r2 mips64r6
diff --git a/libgcc/gthr-posix.h b/libgcc/gthr-posix.h
index 555c0fe24..47c8655f9 100644
index a54a32e..0d81ec7 100644
--- a/libgcc/gthr-posix.h
+++ b/libgcc/gthr-posix.h
@@ -32,6 +32,19 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
@ -462,10 +460,10 @@ index 555c0fe24..47c8655f9 100644
#if ((defined(_LIBOBJC) || defined(_LIBOBJC_WEAK)) \
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index 41797a971..f746e8353 100755
index e70fdd6..014f956 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -78319,6 +78341,12 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -78536,6 +78536,12 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/syscall.h>
int lk;
@ -478,7 +476,7 @@ index 41797a971..f746e8353 100755
int
main ()
{
@@ -78377,6 +78405,12 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -78594,6 +78600,12 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <sys/syscall.h>
int lk;
@ -492,7 +490,7 @@ index 41797a971..f746e8353 100755
main ()
{
diff --git a/libstdc++-v3/include/bits/locale_facets.h b/libstdc++-v3/include/bits/locale_facets.h
index e3e206b7d..e85dc2c76 100644
index 1ad0eb5..9f322d8 100644
--- a/libstdc++-v3/include/bits/locale_facets.h
+++ b/libstdc++-v3/include/bits/locale_facets.h
@@ -47,6 +47,20 @@
@ -535,10 +533,10 @@ index e3e206b7d..e85dc2c76 100644
#ifdef _GLIBCXX_USE_WCHAR_T
diff --git a/libstdc++-v3/libsupc++/guard.cc b/libstdc++-v3/libsupc++/guard.cc
index 9b617998f..c149169bb 100644
index 19953bc..5ae24af 100644
--- a/libstdc++-v3/libsupc++/guard.cc
+++ b/libstdc++-v3/libsupc++/guard.cc
@@ -33,7 +33,12 @@
@@ -34,7 +34,12 @@
#if defined(__GTHREADS) && defined(__GTHREAD_HAS_COND) \
&& (ATOMIC_INT_LOCK_FREE > 1) && defined(_GLIBCXX_HAVE_LINUX_FUTEX)
# include <climits>