summaryrefslogtreecommitdiffstats
path: root/package/binutils/2.28.1/0905-bfin-rofixup-bug.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/binutils/2.28.1/0905-bfin-rofixup-bug.patch')
-rw-r--r--package/binutils/2.28.1/0905-bfin-rofixup-bug.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/package/binutils/2.28.1/0905-bfin-rofixup-bug.patch b/package/binutils/2.28.1/0905-bfin-rofixup-bug.patch
new file mode 100644
index 0000000000..5733b219d7
--- /dev/null
+++ b/package/binutils/2.28.1/0905-bfin-rofixup-bug.patch
@@ -0,0 +1,21 @@
+Fixes: LINKER BUG: .rofixup section size mismatch
+
+Workaround from adi-toolchain commit:
+af414ec1fb628ddb1562f062f3db49823ca14ca2
+[#6798] binutils-2.21/bfd: temp workaround for rofixup mismatch errors.
+
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+
+diff -Nur binutils-2.26.1.orig/bfd/elf32-bfin.c binutils-2.26.1/bfd/elf32-bfin.c
+--- binutils-2.26.1.orig/bfd/elf32-bfin.c 2015-11-13 09:27:40.000000000 +0100
++++ binutils-2.26.1/bfd/elf32-bfin.c 2016-07-31 00:50:48.357995132 +0200
+@@ -4845,7 +4845,8 @@
+
+ case R_BFIN_FUNCDESC:
+ picrel->fd++;
+- picrel->relocsfd++;
++ if (bfd_get_section_flags (abfd, sec) & SEC_ALLOC)
++ picrel->relocsfd++;
+ break;
+
+ /* This relocation describes the C++ object vtable hierarchy.
OpenPOWER on IntegriCloud