diff options
author | Alan Modra <amodra@gmail.com> | 2007-10-18 09:13:51 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2007-10-18 09:13:51 +0000 |
commit | 13285a1b2c20277cb2346e9c635c5ea7019441ad (patch) | |
tree | 66e7bb4b2fffa19160911f6aeabe396b6fcbedc6 /bfd/config.bfd | |
parent | ec4f988b1bb001dc5bffe3f468c7cf8a600795ab (diff) | |
download | gdb-13285a1b2c20277cb2346e9c635c5ea7019441ad.zip gdb-13285a1b2c20277cb2346e9c635c5ea7019441ad.tar.gz gdb-13285a1b2c20277cb2346e9c635c5ea7019441ad.tar.bz2 |
PR ld/4424
* config.bfd (targ_selvecs): Add bfd_elf64_alpha_vec for
alpha/FreeBSD. Add bfd_elf64_sparc_vec for sparc64/FreeBSD.
Add bfd_elf32_i386_vec and bfd_efi_app_ia32_vec for i386/FreeBSD.
(targ64_selvecs): Set for i386/FreeBSD.
* elf-bfd.h (elf_backend_data): Add relocs_compatible.
(_bfd_elf_default_relocs_compatible): Declare.
(_bfd_elf_relocs_compatible): Declare.
* elfxx-target.h (elf_backend_relocs_compatible): Define.
(elfNN_bed): Init new relocs_compatible field.
* elflink.c (_bfd_elf_default_relocs_compatible): New function.
(_bfd_elf_relocs_compatible): New function.
(elf_link_add_object_symbols): Call bed->relocs_compatible.
* elf32-i386.c (elf_backend_relocs_compatible): Define.
* elf64-alpha.c: Likewise.
* elf64-sparc.c: Likewise.
* elf64-x86-64.c: Likewise.
Diffstat (limited to 'bfd/config.bfd')
-rw-r--r-- | bfd/config.bfd | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/bfd/config.bfd b/bfd/config.bfd index 932e4fe..899e18e 100644 --- a/bfd/config.bfd +++ b/bfd/config.bfd @@ -140,7 +140,7 @@ case "${targ}" in #ifdef BFD64 alpha*-*-freebsd* | alpha*-*-kfreebsd*-gnu) targ_defvec=bfd_elf64_alpha_freebsd_vec - targ_selvecs=ecoffalpha_little_vec + targ_selvecs="bfd_elf64_alpha_vec ecoffalpha_little_vec" want64=true # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. case "${targ}" in @@ -188,7 +188,7 @@ case "${targ}" in ;; sparc64-*-freebsd* | sparc64-*-kfreebsd*-gnu) targ_defvec=bfd_elf64_sparc_freebsd_vec - targ_selvecs="bfd_elf32_sparc_vec sunos_big_vec" + targ_selvecs="bfd_elf64_sparc_vec bfd_elf32_sparc_vec sunos_big_vec" ;; sparc64-*-netbsd* | sparc64-*-openbsd*) targ_defvec=bfd_elf64_sparc_vec @@ -535,7 +535,8 @@ case "${targ}" in ;; i[3-7]86-*-freebsd* | i[3-7]86-*-kfreebsd*-gnu | i[3-7]86-*-dragonfly*) targ_defvec=bfd_elf32_i386_freebsd_vec - targ_selvecs=i386coff_vec + targ_selvecs="bfd_elf32_i386_vec bfd_efi_app_ia32_vec i386coff_vec" + targ64_selvecs="bfd_elf64_x86_64_freebsd_vec bfd_elf64_x86_64_vec bfd_efi_app_x86_64_vec" # FreeBSD <= 4.0 supports only the old nonstandard way of ABI labelling. case "${targ}" in i[3-7]86-*-freebsd3* | i[3-7]86-*-freebsd4 | i[3-7]86-*-freebsd4.0*) |