diff options
-rw-r--r-- | target/config/Config.in.binutils | 1 | ||||
-rw-r--r-- | toolchain/binutils/patches/2.26.1/microblaze.patch | 14 |
2 files changed, 14 insertions, 1 deletions
diff --git a/target/config/Config.in.binutils b/target/config/Config.in.binutils index 7457009a0..e262cbcbf 100644 --- a/target/config/Config.in.binutils +++ b/target/config/Config.in.binutils @@ -38,7 +38,6 @@ config ADK_TOOLCHAIN_BINUTILS_2_26_1 depends on !ADK_TARGET_ARCH_FRV depends on !ADK_TARGET_ARCH_H8300 depends on !ADK_TARGET_ARCH_LM32 - depends on !ADK_TARGET_ARCH_MICROBLAZE depends on !ADK_TARGET_ARCH_NDS32 depends on !ADK_TARGET_ARCH_NIOS2 diff --git a/toolchain/binutils/patches/2.26.1/microblaze.patch b/toolchain/binutils/patches/2.26.1/microblaze.patch new file mode 100644 index 000000000..e028bf9d1 --- /dev/null +++ b/toolchain/binutils/patches/2.26.1/microblaze.patch @@ -0,0 +1,14 @@ +diff -Nur binutils-2.26.1.orig/bfd/elf32-microblaze.c binutils-2.26.1/bfd/elf32-microblaze.c +--- binutils-2.26.1.orig/bfd/elf32-microblaze.c 2015-11-13 09:27:40.000000000 +0100 ++++ binutils-2.26.1/bfd/elf32-microblaze.c 2016-10-20 19:06:58.655565765 +0200 +@@ -3296,8 +3296,8 @@ + The entry in the global offset table will already have been + initialized in the relocate_section function. */ + if (bfd_link_pic (info) +- && (info->symbolic || h->dynindx == -1) +- && h->def_regular) ++ && ((info->symbolic && h->def_regular) ++ || h->dynindx == -1)) + { + asection *sec = h->root.u.def.section; + microblaze_elf_output_dynamic_relocation (output_bfd, |