summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Hsieh <andrewhsieh@google.com>2012-10-23 19:06:03 +0800
committerAndrew Hsieh <andrewhsieh@google.com>2012-10-23 19:06:03 +0800
commit3db8634669090686d790b61700a84c25eed74e04 (patch)
tree021d6cd8f7df642bed65458ac91c5fa900120145
parent2e216c77403ccdb1c5604f4ceb9ceb8e9f2bb2d3 (diff)
downloadtoolchain_binutils-3db8634669090686d790b61700a84c25eed74e04.zip
toolchain_binutils-3db8634669090686d790b61700a84c25eed74e04.tar.gz
toolchain_binutils-3db8634669090686d790b61700a84c25eed74e04.tar.bz2
Fix ld gc-sections
Used to be local NDK patch at $NDK/build/tools/toolchain-patches/ binutils/0001-Fix-ld-gc-sections.patch Change-Id: I3946edae82c315904f919f4c2f5f94b10a31aa37
-rw-r--r--binutils-2.21/bfd/elflink.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/binutils-2.21/bfd/elflink.c b/binutils-2.21/bfd/elflink.c
index 51dae66..753bb9c 100644
--- a/binutils-2.21/bfd/elflink.c
+++ b/binutils-2.21/bfd/elflink.c
@@ -11575,6 +11575,9 @@ struct elf_gc_sweep_symbol_info
static bfd_boolean
elf_gc_sweep_symbol (struct elf_link_hash_entry *h, void *data)
{
+ if (h->root.type == bfd_link_hash_warning)
+ h = (struct elf_link_hash_entry *) h->root.u.i.link;
+
if (!h->mark
&& (((h->root.type == bfd_link_hash_defined
|| h->root.type == bfd_link_hash_defweak)