2009-08-30 H.J. Lu <hongjiu.lu@intel.com>
[external/binutils.git] / bfd / elf64-x86-64.c
index 6db6472..de6f6ec 100644 (file)
@@ -3716,23 +3716,6 @@ elf64_x86_64_finish_dynamic_symbol (bfd *output_bfd,
 {
   struct elf64_x86_64_link_hash_table *htab;
 
-  /* PR 10433: STT_GNU_IFUNC symbols must go through the PLT
-     only when they are referenced, not when they are defined.  */
-  if (h->type == STT_GNU_IFUNC
-      && h->def_regular
-      && ! h->ref_regular
-      && ! info->relocatable)
-    {
-      if (! ((h->dynindx != -1
-             || h->forced_local)
-            && ((info->shared
-                 && (ELF_ST_VISIBILITY (h->other) == STV_DEFAULT
-                     || h->root.type != bfd_link_hash_undefweak))
-                || ! h->forced_local)
-            && elf_hash_table (info)->dynamic_sections_created))
-       return TRUE;
-    }
-
   htab = elf64_x86_64_hash_table (info);
 
   if (h->plt.offset != (bfd_vma) -1)