summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--target/config/Config.in.binutils1
-rw-r--r--toolchain/binutils/patches/2.27/0001-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch35
2 files changed, 35 insertions, 1 deletions
diff --git a/target/config/Config.in.binutils b/target/config/Config.in.binutils
index 532223316..fb945945e 100644
--- a/target/config/Config.in.binutils
+++ b/target/config/Config.in.binutils
@@ -27,7 +27,6 @@ config ADK_TOOLCHAIN_BINUTILS_2_27
depends on !ADK_TARGET_ARCH_ARC
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_LM32
- depends on !ADK_TARGET_ARCH_MICROBLAZE
depends on !ADK_TARGET_ARCH_NDS32
depends on !ADK_TARGET_CPU_CRIS_CRISV10
diff --git a/toolchain/binutils/patches/2.27/0001-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch b/toolchain/binutils/patches/2.27/0001-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch
new file mode 100644
index 000000000..76b3e3b46
--- /dev/null
+++ b/toolchain/binutils/patches/2.27/0001-Revert-part-Set-dynamic-tag-VMA-and-size-from-dynami.patch
@@ -0,0 +1,35 @@
+From c646b02fdcae5f37bd88f33a0c4683ef13ad5c82 Mon Sep 17 00:00:00 2001
+From: Alan Modra <amodra@gmail.com>
+Date: Mon, 31 Oct 2016 12:46:38 +1030
+Subject: [PATCH] Revert part "Set dynamic tag VMA and size from dynamic
+ section when possible"
+
+ PR 20748
+ * elf32-microblaze.c (microblaze_elf_finish_dynamic_sections): Revert
+ 2016-05-13 change.
+
+Signed-off-by: Waldemar Brodkorb <wbx@uclibc-ng.org>
+
+diff --git a/bfd/elf32-microblaze.c b/bfd/elf32-microblaze.c
+index 477e7b3..5c66808 100644
+--- a/bfd/elf32-microblaze.c
++++ b/bfd/elf32-microblaze.c
+@@ -3396,13 +3396,13 @@ microblaze_elf_finish_dynamic_sections (bfd *output_bfd,
+ {
+ asection *s;
+
+- s = bfd_get_linker_section (dynobj, name);
++ s = bfd_get_section_by_name (output_bfd, name);
+ if (s == NULL)
+ dyn.d_un.d_val = 0;
+ else
+ {
+ if (! size)
+- dyn.d_un.d_ptr = s->output_section->vma + s->output_offset;
++ dyn.d_un.d_ptr = s->vma;
+ else
+ dyn.d_un.d_val = s->size;
+ }
+--
+2.1.4
+