* 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.
This commit is contained in:
Richard Sandiford 2006-03-02 08:52:49 +00:00
parent 4a3dc54359
commit 9c72ff8443
5 changed files with 28 additions and 39 deletions

View 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.

View 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)

View 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 **);

View 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

View 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