From e566454513529e463f4cbe48d4fb6b37a5b12856 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Wed, 19 Sep 2012 06:33:07 +0000
Subject: [PATCH] binutils: backport ld patch to fix ARM specific issues with
 --gc-sections

SVN-Revision: 33461
---
 .../patches/2.22/400-fix_arm_gc_sections.patch       | 12 ++++++++++++
 1 file changed, 12 insertions(+)
 create mode 100644 toolchain/binutils/patches/2.22/400-fix_arm_gc_sections.patch

diff --git a/toolchain/binutils/patches/2.22/400-fix_arm_gc_sections.patch b/toolchain/binutils/patches/2.22/400-fix_arm_gc_sections.patch
new file mode 100644
index 0000000000..04badab620
--- /dev/null
+++ b/toolchain/binutils/patches/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++;
-- 
GitLab