diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-19 06:33:07 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-19 06:33:07 +0000 |
commit | 3eccd5d2f980e28c05b03d7ceb1bb7deb9b24aed (patch) | |
tree | 5282d2f9cbf1ca3c2b29f5e9bfb7a68d4f6aebb4 /toolchain/binutils | |
parent | 484998f83f03a4c86c649e5dba117b0db9dc22f5 (diff) |
binutils: backport ld patch to fix ARM specific issues with --gc-sections
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33461 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'toolchain/binutils')
-rw-r--r-- | toolchain/binutils/patches/2.22/400-fix_arm_gc_sections.patch | 12 |
1 files changed, 12 insertions, 0 deletions
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 000000000..04badab62 --- /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++; |