Blame SOURCES/binutils-ppc64le-5.patch

881b8e
Undo a bad change.  Applying part of upstream git e5034e59 isn't a
881b8e
good idea.
881b8e
881b8e
diff -urp binutils-aldy/bfd/elf64-ppc.c binutils-alan1/bfd/elf64-ppc.c
881b8e
--- binutils-aldy/bfd/elf64-ppc.c	2014-07-31 12:21:34.755773236 +0930
881b8e
+++ binutils-alan1/bfd/elf64-ppc.c	2014-07-31 13:59:20.083643016 +0930
881b8e
@@ -97,7 +97,7 @@ static bfd_vma opd_entry_value
881b8e
 #define elf_backend_copy_indirect_symbol      ppc64_elf_copy_indirect_symbol
881b8e
 #define elf_backend_add_symbol_hook	      ppc64_elf_add_symbol_hook
881b8e
 #define elf_backend_check_directives	      ppc64_elf_process_dot_syms
881b8e
-#define elf_backend_notice_as_needed	      ppc64_elf_notice_as_needed
881b8e
+#define elf_backend_as_needed_cleanup	      ppc64_elf_as_needed_cleanup
881b8e
 #define elf_backend_archive_symbol_lookup     ppc64_elf_archive_symbol_lookup
881b8e
 #define elf_backend_check_relocs	      ppc64_elf_check_relocs
881b8e
 #define elf_backend_gc_keep		      ppc64_elf_gc_keep
881b8e
@@ -4974,22 +4974,17 @@ ppc64_elf_process_dot_syms (bfd *ibfd, s
881b8e
 /* Undo hash table changes when an --as-needed input file is determined
881b8e
    not to be needed.  */
881b8e
 
881b8e
-__attribute__((unused))
881b8e
 static bfd_boolean
881b8e
-ppc64_elf_notice_as_needed (bfd *ibfd,
881b8e
-			    struct bfd_link_info *info,
881b8e
-			    enum notice_asneeded_action act)
881b8e
+ppc64_elf_as_needed_cleanup (bfd *ibfd ATTRIBUTE_UNUSED,
881b8e
+			     struct bfd_link_info *info)
881b8e
 {
881b8e
-  if (act == notice_not_needed)
881b8e
-    {
881b8e
-      struct ppc_link_hash_table *htab = ppc_hash_table (info);
881b8e
+  struct ppc_link_hash_table *htab = ppc_hash_table (info);
881b8e
 
881b8e
-      if (htab == NULL)
881b8e
-	return FALSE;
881b8e
+  if (htab == NULL)
881b8e
+    return FALSE;
881b8e
 
881b8e
-      htab->dot_syms = NULL;
881b8e
-    }
881b8e
-  return _bfd_elf_notice_as_needed (ibfd, info, act);
881b8e
+  htab->dot_syms = NULL;
881b8e
+  return TRUE;
881b8e
 }
881b8e
 
881b8e
 /* If --just-symbols against a final linked binary, then assume we need
881b8e
diff -urp binutils-aldy/bfd/elf-bfd.h binutils-alan1/bfd/elf-bfd.h
881b8e
--- binutils-aldy/bfd/elf-bfd.h	2014-07-31 10:57:17.934601544 +0930
881b8e
+++ binutils-alan1/bfd/elf-bfd.h	2014-07-31 13:58:00.966838188 +0930
881b8e
@@ -2158,8 +2158,6 @@ extern bfd_boolean _bfd_elf_default_relo
881b8e
 
881b8e
 extern bfd_boolean _bfd_elf_relocs_compatible
881b8e
   (const bfd_target *, const bfd_target *);
881b8e
-extern bfd_boolean _bfd_elf_notice_as_needed
881b8e
-(bfd *, struct bfd_link_info *, enum notice_asneeded_action);
881b8e
 
881b8e
 extern struct elf_link_hash_entry *_bfd_elf_archive_symbol_lookup
881b8e
   (bfd *, struct bfd_link_info *, const char *);
881b8e
diff -urp binutils-aldy/bfd/elfxx-target.h binutils-alan1/bfd/elfxx-target.h
881b8e
--- binutils-aldy/bfd/elfxx-target.h	2014-07-31 10:57:23.822364217 +0930
881b8e
+++ binutils-alan1/bfd/elfxx-target.h	2014-07-31 13:57:41.651618265 +0930
881b8e
@@ -424,9 +424,6 @@
881b8e
 #ifndef elf_backend_check_directives
881b8e
 #define elf_backend_check_directives	0
881b8e
 #endif
881b8e
-#ifndef elf_backend_notice_as_needed
881b8e
-#define elf_backend_notice_as_needed    _bfd_elf_notice_as_needed
881b8e
-#endif
881b8e
 #ifndef elf_backend_as_needed_cleanup
881b8e
 #define elf_backend_as_needed_cleanup	0
881b8e
 #endif