aboutsummaryrefslogtreecommitdiff
path: root/bfd/elfxx-sparc.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@codesourcery.com>2007-11-08 13:51:07 +0000
committerNathan Sidwell <nathan@codesourcery.com>2007-11-08 13:51:07 +0000
commit7a2b07ff7e6a3f34e8022a1a72c8a8e812c1da7b (patch)
tree3669cb0abc46ede1f142e0d7cec365c4f980f25e /bfd/elfxx-sparc.c
parent11ac2671101d0cd443a67ab4064e5af55bf410e0 (diff)
downloadgdb-7a2b07ff7e6a3f34e8022a1a72c8a8e812c1da7b.zip
gdb-7a2b07ff7e6a3f34e8022a1a72c8a8e812c1da7b.tar.gz
gdb-7a2b07ff7e6a3f34e8022a1a72c8a8e812c1da7b.tar.bz2
include/elf/
* vxworks.h: New. bfd/ * elf-vxworks.h (elf_vxworks_add_dynamic_entries): Declare. (elf_vxworks_finish_dynamic_entry): Declare. * elf-vxworks.c: Include elf/vxworks.h. (elf_vxworks_add_dynamic_entries): New. (elf_vxworks_finish_dynamic_entry): New. * Makefile.am (elf-vxworks.lo): Add dependency. * Makefile.in (elf-vxworks.lo): Add dependency. * elf32-i386.c (elf_i386_size_dynamic_sections, elf_i386_finish_dynamic_sections): Call elf_vxworks_add_dynamic_entries and elf_vxworks_finish_dynamic_entry. * elf32-ppc.c (ppc_elf_size_dynamic_sections, ppc_elf_finish_dynamic_sections): Likewise. * elfxx-sparc.c (_bfd_sparc_elf_size_dynamic_sections, sparc_finish_dyn): Likewise. * elf32-sh.c (sh_elf_size_dynamic_sections, sh_elf_finish_dynamic_sections): Likewise. * elfxx-mips.c (_bfd_mips_elf_size_dynamic_sections, _bfd_mips_elf_finish_dynamic_sections): Likewise. * elf32-arm.c (elf32_arm_size_dynamic_sections, elf32_arm_finish_dynamic_sections): Likewise. ld/ * ld-vxworks/tls-2.d: New. * ld-vxworks/tls-2.s: New.
Diffstat (limited to 'bfd/elfxx-sparc.c')
-rw-r--r--bfd/elfxx-sparc.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c
index 736f044..79f8f86 100644
--- a/bfd/elfxx-sparc.c
+++ b/bfd/elfxx-sparc.c
@@ -2396,6 +2396,9 @@ _bfd_sparc_elf_size_dynamic_sections (bfd *output_bfd,
eht->dynsymcount++;
}
}
+ if (htab->is_vxworks
+ && !elf_vxworks_add_dynamic_entries (output_bfd, info))
+ return FALSE;
}
#undef add_dynamic_entry
@@ -3846,6 +3849,9 @@ sparc_finish_dyn (bfd *output_bfd, struct bfd_link_info *info,
bed->s->swap_dyn_out (output_bfd, &dyn, dyncon);
}
}
+ else if (htab->is_vxworks
+ && elf_vxworks_finish_dynamic_entry (output_bfd, &dyn))
+ bed->s->swap_dyn_out (output_bfd, &dyn, dyncon);
else if (abi_64_p && dyn.d_tag == DT_SPARC_REGISTER)
{
if (stt_regidx == -1)