aboutsummaryrefslogtreecommitdiffstats
path: root/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
diff options
context:
space:
mode:
Diffstat (limited to 'main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch')
-rw-r--r--main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch65
1 files changed, 17 insertions, 48 deletions
diff --git a/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch b/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
index 5de937f4fcc..6e1fa7731c9 100644
--- a/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
+++ b/main/binutils/0001-Revert-PR25882-.gnu.attributes-are-not-checked-for-s.patch
@@ -1,39 +1,24 @@
-From b1faf99f3e546df2cd302bb1ad36a2078224fe8b Mon Sep 17 00:00:00 2001
+From bbf05b742fde518fb97c789b043fe0d3aaf549f0 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
-Date: Fri, 30 Oct 2020 16:59:48 -0600
+Date: Tue, 21 Sep 2021 14:53:13 +0000
Subject: [PATCH] Revert "PR25882, .gnu.attributes are not checked for shared
libraries"
+This revert is needed to avoid wrongly tagging objects with the incompatible
+IBM long double ABI, which is not supported by musl and will result in
+linking errors if used.
+
This reverts commit a8acd6eeb6dc2cc5460ece90f90ebe36b56b20ba.
---
- bfd/ChangeLog | 6 ------
- bfd/elf32-tic6x.c | 3 ---
- ld/ChangeLog | 6 ------
- ld/ldlang.c | 9 ++++-----
- 4 files changed, 4 insertions(+), 20 deletions(-)
+ bfd/elf32-tic6x.c | 3 ---
+ ld/ldlang.c | 10 ++++------
+ 2 files changed, 4 insertions(+), 9 deletions(-)
-diff --git a/bfd/ChangeLog b/bfd/ChangeLog
-index 9fac12538a..b5461494e8 100644
---- a/bfd/ChangeLog
-+++ b/bfd/ChangeLog
-@@ -1422,12 +1422,6 @@
- accessing root.u.def of symbols. Also check root.u.def.section
- is non-NULL. Reverse tests so as to make the logic positive.
-
--2020-05-01 Alan Modra <amodra@gmail.com>
--
-- PR 25882
-- * elf32-tic6x.c (elf32_tic6x_merge_attributes): Don't transfer
-- Tag_ABI_PIC or Tag_ABI_PID from dynamic objects to the output.
--
- 2020-05-01 Alan Modra <amodra@gmail.com>
-
- PR 25882
diff --git a/bfd/elf32-tic6x.c b/bfd/elf32-tic6x.c
-index b8b916bfd3..91bb6a10b1 100644
+index 5754f3cb860..3ad1d612749 100644
--- a/bfd/elf32-tic6x.c
+++ b/bfd/elf32-tic6x.c
-@@ -3748,9 +3748,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
+@@ -3735,9 +3735,6 @@ elf32_tic6x_merge_attributes (bfd *ibfd, struct bfd_link_info *info)
case Tag_ABI_PIC:
case Tag_ABI_PID:
@@ -43,36 +28,20 @@ index b8b916bfd3..91bb6a10b1 100644
if (out_attr[i].i > in_attr[i].i)
out_attr[i].i = in_attr[i].i;
break;
-diff --git a/ld/ChangeLog b/ld/ChangeLog
-index 4eec7d2977..b93452f70c 100644
---- a/ld/ChangeLog
-+++ b/ld/ChangeLog
-@@ -1319,12 +1319,6 @@
- * testsuite/ld-aarch64/farcall-group.d: New test driver.
- * testsuite/ld-aarch64/aarch64-elf.exp: Run the new test.
-
--2020-05-01 Alan Modra <amodra@gmail.com>
--
-- PR 25882
-- * ldlang.c (lang_check): Call bfd_merge_private_bfd_data for
-- shared libraries.
--
- 2020-05-01 Alan Modra <amodra@gmail.com>
-
- * po/BLD-POTFILES.in: Regenerate.
diff --git a/ld/ldlang.c b/ld/ldlang.c
-index 9977195074..173d8ec349 100644
+index 37b64c89ee1..f13beaef9d9 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
-@@ -6972,12 +6972,11 @@ lang_check (void)
+@@ -7071,13 +7071,11 @@ lang_check (void)
bfd_printable_name (input_bfd), input_bfd,
bfd_printable_name (link_info.output_bfd));
}
-
- /* If the input bfd has no contents, it shouldn't set the
- private data of the output bfd. */
-- else if ((input_bfd->flags & DYNAMIC) != 0
-- || bfd_count_sections (input_bfd) != 0)
+- else if (!file->flags.just_syms
+- && ((input_bfd->flags & DYNAMIC) != 0
+- || bfd_count_sections (input_bfd) != 0))
+ else if (bfd_count_sections (input_bfd))
{
+ /* If the input bfd has no contents, it shouldn't set the
@@ -82,5 +51,5 @@ index 9977195074..173d8ec349 100644
/* If we aren't supposed to warn about mismatched input
--
-2.29.2
+2.33.0