bfd/
authorRichard Sandiford <rdsandiford@googlemail.com>
Thu, 2 Mar 2006 08:52:49 +0000 (08:52 +0000)
committerRichard Sandiford <rdsandiford@googlemail.com>
Thu, 2 Mar 2006 08:52:49 +0000 (08:52 +0000)
* elf32-i386.c (elf_i386_vxworks_link_output_symbol_hook): Delete.
(elf_backend_link_output_symbol_hook): Use
elf_vxworks_link_output_symbol_hook instead.
* elf32-ppc.c (elf_i386_vxworks_link_output_symbol_hook): Delete.
(elf_backend_link_output_symbol_hook): Use
elf_vxworks_link_output_symbol_hook instead.
* elf-vxworks.c (elf_vxworks_link_output_symbol_hook): Provide the
same interface as elf_backend_link_output_symbol_hook.
* elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Update
prototype accordingly.

bfd/ChangeLog
bfd/elf-vxworks.c
bfd/elf-vxworks.h
bfd/elf32-i386.c
bfd/elf32-ppc.c

index 105ef257f257f1b338bdc20962ec35f4e880a08b..53c3ed3c5e6709f94b21cf642ad1e3e478528742 100644 (file)
@@ -1,3 +1,16 @@
+2006-03-02  Richard Sandiford  <richard@codesourcery.com>
+
+       * elf32-i386.c (elf_i386_vxworks_link_output_symbol_hook): Delete.
+       (elf_backend_link_output_symbol_hook): Use
+       elf_vxworks_link_output_symbol_hook instead.
+       * elf32-ppc.c (elf_i386_vxworks_link_output_symbol_hook): Delete.
+       (elf_backend_link_output_symbol_hook): Use
+       elf_vxworks_link_output_symbol_hook instead.
+       * elf-vxworks.c (elf_vxworks_link_output_symbol_hook): Provide the
+       same interface as elf_backend_link_output_symbol_hook.
+       * elf-vxworks.h (elf_vxworks_link_output_symbol_hook): Update
+       prototype accordingly.
+
 2006-03-02  Richard Sandiford  <richard@codesourcery.com>
 
        * elf32-ppc.c (ppc_elf_plt_type): New enumeration.
index 708177a2eeb1ccce25634fd5bba0249ee1a3354b..0dca07c583301eaa301101ef78fb1fba92179d4f 100644 (file)
@@ -58,9 +58,18 @@ elf_vxworks_add_symbol_hook (bfd *abfd ATTRIBUTE_UNUSED,
 
 /* Tweak magic VxWorks symbols as they are written to the output file.  */
 bfd_boolean
-elf_vxworks_link_output_symbol_hook (const char *name,
-                                    Elf_Internal_Sym *sym)
+elf_vxworks_link_output_symbol_hook (struct bfd_link_info *info
+                                      ATTRIBUTE_UNUSED,
+                                    const char *name,
+                                    Elf_Internal_Sym *sym,
+                                    asection *input_sec ATTRIBUTE_UNUSED,
+                                    struct elf_link_hash_entry *h
+                                      ATTRIBUTE_UNUSED)
 {
+  /* Ignore the first dummy symbol.  */
+  if (!name)
+    return TRUE;
+
   /* Reverse the effects of the hack in elf_vxworks_add_symbol_hook.  */
   if (strcmp (name, "__GOTT_INDEX__") == 0
       || strcmp (name, "__GOTT_BASE__") == 0)
index 0ac422e95afca9cd2018443a0c479f7dcce1fa29..76db15e64dbfab82043c97e7d69972e90b9ed4fe 100644 (file)
@@ -25,7 +25,8 @@ bfd_boolean elf_vxworks_add_symbol_hook
   (bfd *, struct bfd_link_info *, Elf_Internal_Sym *, const char **,
    flagword *, asection **, bfd_vma *);
 bfd_boolean elf_vxworks_link_output_symbol_hook
-  (const char *, Elf_Internal_Sym *);
+  (struct bfd_link_info *, const char *name, Elf_Internal_Sym *,
+   asection *, struct elf_link_hash_entry *);
 bfd_boolean elf_vxworks_emit_relocs
   (bfd *, asection *, Elf_Internal_Shdr *, Elf_Internal_Rela *,
    struct elf_link_hash_entry **);
index 794215cfb3007ad6781ac30f16eea685273e99a5..6b51f38b4c4ad7ffc9400023697dfbb1697e793d 100644 (file)
@@ -3969,23 +3969,6 @@ elf_i386_vxworks_link_hash_table_create (bfd *abfd)
 }
 
 
-/* Tweak magic VxWorks symbols as they are written to the output file.  */
-static bfd_boolean
-elf_i386_vxworks_link_output_symbol_hook (struct bfd_link_info *info
-                                           ATTRIBUTE_UNUSED,
-                                         const char *name,
-                                         Elf_Internal_Sym *sym,
-                                         asection *input_sec ATTRIBUTE_UNUSED,
-                                         struct elf_link_hash_entry *h
-                                           ATTRIBUTE_UNUSED)
-{
-  /* Ignore the first dummy symbol.  */
-  if (!name)
-    return TRUE;
-
-  return elf_vxworks_link_output_symbol_hook (name, sym);
-}
-
 #undef elf_backend_post_process_headers
 #undef bfd_elf32_bfd_link_hash_table_create
 #define bfd_elf32_bfd_link_hash_table_create \
@@ -3995,7 +3978,7 @@ elf_i386_vxworks_link_output_symbol_hook (struct bfd_link_info *info
   elf_vxworks_add_symbol_hook
 #undef elf_backend_link_output_symbol_hook
 #define elf_backend_link_output_symbol_hook \
-  elf_i386_vxworks_link_output_symbol_hook
+  elf_vxworks_link_output_symbol_hook
 #undef elf_backend_emit_relocs
 #define elf_backend_emit_relocs                        elf_vxworks_emit_relocs
 #undef elf_backend_final_write_processing
index 952075513b558e05f9d086e3d58e021ab74870ee..353f288b18a5caf3455668f96dacabbf5a102aac 100644 (file)
@@ -7558,23 +7558,6 @@ ppc_elf_vxworks_add_symbol_hook (bfd *abfd,
   return ppc_elf_add_symbol_hook(abfd, info, sym,namep, flagsp, secp, valp);
 }
 
-/* Tweak magic VxWorks symbols as they are written to the output file.  */
-static bfd_boolean
-elf_i386_vxworks_link_output_symbol_hook (struct bfd_link_info *info
-                                          ATTRIBUTE_UNUSED,
-                                        const char *name,
-                                        Elf_Internal_Sym *sym,
-                                        asection *input_sec ATTRIBUTE_UNUSED,
-                                        struct elf_link_hash_entry *h
-                                          ATTRIBUTE_UNUSED)
-{
-  /* Ignore the first dummy symbol.  */
-  if (!name)
-    return TRUE;
-
-  return elf_vxworks_link_output_symbol_hook (name, sym);
-}
-
 static void
 ppc_elf_vxworks_final_write_processing (bfd *abfd, bfd_boolean linker)
 {
@@ -7605,7 +7588,7 @@ ppc_elf_vxworks_final_write_processing (bfd *abfd, bfd_boolean linker)
   ppc_elf_vxworks_add_symbol_hook
 #undef elf_backend_link_output_symbol_hook
 #define elf_backend_link_output_symbol_hook \
-  elf_i386_vxworks_link_output_symbol_hook
+  elf_vxworks_link_output_symbol_hook
 #undef elf_backend_final_write_processing
 #define elf_backend_final_write_processing \
   ppc_elf_vxworks_final_write_processing