]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Revert the fix for PR ld/13177.
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 18 Oct 2011 19:06:50 +0000 (19:06 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 18 Oct 2011 19:06:50 +0000 (19:06 +0000)
bfd/

2011-10-18  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/13177
* elflink.c (elf_gc_sweep_symbol): Don't hide symbols without PLT
nor GOT references.

ld/testsuite/

2011-10-18  H.J. Lu  <hongjiu.lu@intel.com>

PR ld/13177
* ld-elf/pr13177.d: Removed.
* ld-elf/pr13177.s: Likewise.

bfd/ChangeLog
bfd/elflink.c
ld/testsuite/ChangeLog
ld/testsuite/ld-elf/pr13177.d [deleted file]
ld/testsuite/ld-elf/pr13177.s [deleted file]

index 8adb6000c87a563832e4931ddab2876a5179d072..cfd1fcc830e11513a26ec2e409297f859952294d 100644 (file)
@@ -1,3 +1,9 @@
+2011-10-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/13177
+       * elflink.c (elf_gc_sweep_symbol): Don't hide symbols without PLT
+       nor GOT references.
+
 2011-10-14  Hans-Peter Nilsson  <hp@axis.com>
 
        * elf32-cris.c (cris_elf_gc_sweep_hook) <R_CRIS_16_GOTPLT>
index 5d181f7993c2fe76fdcd03cf19efeac6c2bb8ab5..33a1a63cb42062fb1cbd041f0ff7a11e1475d01c 100644 (file)
@@ -11691,18 +11691,13 @@ 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_defined
-       || h->root.type == bfd_link_hash_defweak)
-       && !h->root.u.def.section->gc_mark
-       && (!(h->root.u.def.section->owner->flags & DYNAMIC)
-          || (h->plt.refcount <= 0
-              && h->got.refcount <= 0)))
-      || (h->root.type == bfd_link_hash_undefined
-         && h->plt.refcount <= 0
-         && h->got.refcount <= 0))
+  if ((h->root.type == bfd_link_hash_defined
+       || h->root.type == bfd_link_hash_defweak)
+      && !h->root.u.def.section->gc_mark
+      && !(h->root.u.def.section->owner->flags & DYNAMIC))
     {
       struct elf_gc_sweep_symbol_info *inf =
-       (struct elf_gc_sweep_symbol_info *) data;
+          (struct elf_gc_sweep_symbol_info *) data;
       (*inf->hide_symbol) (inf->info, h, TRUE);
     }
 
index c658c05109845fce9dcc7ad4203b8b7a6681cd55..4889ea67994eef7a38763fdfacda11dbed97f448 100644 (file)
@@ -1,3 +1,9 @@
+2011-10-18  H.J. Lu  <hongjiu.lu@intel.com>
+
+       PR ld/13177
+       * ld-elf/pr13177.d: Removed.
+       * ld-elf/pr13177.s: Likewise.
+
 2011-10-14  Hans-Peter Nilsson  <hp@axis.com>
 
        * ld-cris/pic-gc-72.d: Adjust for dropping unused undefined
diff --git a/ld/testsuite/ld-elf/pr13177.d b/ld/testsuite/ld-elf/pr13177.d
deleted file mode 100644 (file)
index e56e865..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-#source: pr13177.s
-#ld: --gc-sections -shared
-#readelf: -s -D --wide
-#target: *-*-linux* *-*-gnu*
-#notarget: arc-*-* d30v-*-* dlx-*-* i960-*-* or32-*-* pj*-*-*
-#notarget: hppa64-*-* i370-*-* i860-*-* ia64-*-* mep-*-* mn10200-*-*
-# generic linker targets don't support --gc-sections, nor do a bunch of others
-
-#failif
-#...
-.*: 0+0 +0 +NOTYPE +GLOBAL +DEFAULT +UND bar
-#...
diff --git a/ld/testsuite/ld-elf/pr13177.s b/ld/testsuite/ld-elf/pr13177.s
deleted file mode 100644 (file)
index d7caad3..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-       .section .text.foo,"ax",%progbits
-       .globl  foo
-       .type   foo, %function
-foo:
-       .byte 0
-       .section .data.opt_out,"aw",%progbits
-       .type   opt_out, %object
-opt_out:
-       .dc.a bar