summaryrefslogtreecommitdiffstats
path: root/main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch')
-rw-r--r--main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch48
1 files changed, 48 insertions, 0 deletions
diff --git a/main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch b/main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch
new file mode 100644
index 000000000..3e6b8b5bd
--- /dev/null
+++ b/main/gcc/086_all_gcc5-pie-copy-relocs-pr65780.patch
@@ -0,0 +1,48 @@
+https://gcc.gnu.org/PR65780
+
+2015-04-22 Jakub Jelinek <jakub@redhat.com>
+
+ PR target/65780
+ * config/s390/linux.h (TARGET_BINDS_LOCAL_P): Define to
+ default_binds_local_p_2.
+ * config/arm/linux-elf.h (TARGET_BINDS_LOCAL_P): Likewise.
+ * config/aarch64/aarch64-linux.h (TARGET_BINDS_LOCAL_P): Likewise.
+
+--- a/gcc/config/s390/linux.h.jj 2015-01-05 13:07:16.000000000 +0100
++++ b/gcc/config/s390/linux.h 2015-04-22 17:39:38.880273650 +0200
+@@ -90,4 +90,10 @@ along with GCC; see the file COPYING3.
+ #undef TARGET_LIBC_HAS_FUNCTION
+ #define TARGET_LIBC_HAS_FUNCTION gnu_libc_has_function
+
++/* Uninitialized common symbols in non-PIE executables, even with
++ strong definitions in dependent shared libraries, will resolve
++ to COPY relocated symbol in the executable. See PR65780. */
++#undef TARGET_BINDS_LOCAL_P
++#define TARGET_BINDS_LOCAL_P default_binds_local_p_2
++
+ #endif
+--- a/gcc/config/arm/linux-elf.h.jj 2015-01-05 13:07:16.000000000 +0100
++++ b/gcc/config/arm/linux-elf.h 2015-04-22 17:42:35.979420149 +0200
+@@ -118,3 +118,9 @@
+ /* Add .note.GNU-stack. */
+ #undef NEED_INDICATE_EXEC_STACK
+ #define NEED_INDICATE_EXEC_STACK 1
++
++/* Uninitialized common symbols in non-PIE executables, even with
++ strong definitions in dependent shared libraries, will resolve
++ to COPY relocated symbol in the executable. See PR65780. */
++#undef TARGET_BINDS_LOCAL_P
++#define TARGET_BINDS_LOCAL_P default_binds_local_p_2
+--- a/gcc/config/aarch64/aarch64-linux.h.jj 2015-01-05 13:07:17.000000000 +0100
++++ b/gcc/config/aarch64/aarch64-linux.h 2015-04-22 17:40:46.395185820 +0200
+@@ -69,4 +69,10 @@
+
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+
++/* Uninitialized common symbols in non-PIE executables, even with
++ strong definitions in dependent shared libraries, will resolve
++ to COPY relocated symbol in the executable. See PR65780. */
++#undef TARGET_BINDS_LOCAL_P
++#define TARGET_BINDS_LOCAL_P default_binds_local_p_2
++
+ #endif /* GCC_AARCH64_LINUX_H */