summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fainelli <f.fainelli@gmail.com>2012-09-19 08:40:50 (GMT)
committerFlorian Fainelli <f.fainelli@gmail.com>2012-09-19 08:40:50 (GMT)
commite395366aeae3695707ad0d61113f5be8a5cbbfbb (patch)
tree5527d859c555b4a780fc2a5b9ff0b49f551c446d
parent1306ab85276bd8b61ed5ccb1dbd1d5e8948a20e9 (diff)
binutils/binutils: backport upstream fix for binutils 2.22 ld bug 14189
See http://sourceware.org/bugzilla/show_bug.cgi?id=14189 for more information. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
-rw-r--r--patches/binutils/2.22/400-fix_arm_gc_sections.patch12
1 files changed, 12 insertions, 0 deletions
diff --git a/patches/binutils/2.22/400-fix_arm_gc_sections.patch b/patches/binutils/2.22/400-fix_arm_gc_sections.patch
new file mode 100644
index 0000000..04badab
--- /dev/null
+++ b/patches/binutils/2.22/400-fix_arm_gc_sections.patch
@@ -0,0 +1,12 @@
+--- a/bfd/elf32-arm.c
++++ b/bfd/elf32-arm.c
+@@ -12408,7 +12408,8 @@ elf32_arm_check_relocs (bfd *abfd, struc
+
+ /* If the symbol is a function that doesn't bind locally,
+ this relocation will need a PLT entry. */
+- root_plt->refcount += 1;
++ if (root_plt->refcount != -1)
++ root_plt->refcount += 1;
+
+ if (!call_reloc_p)
+ arm_plt->noncall_refcount++;