This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [PATCH] Better (MIPS) ELF64 archive support
- From: Nick Clifton <nickc at cambridge dot redhat dot com>
- To: ica2_ts at csv dot ica dot uni-stuttgart dot de
- Cc: binutils at sources dot redhat dot com
- Date: 05 Dec 2001 09:43:50 +0000
- Subject: Re: [PATCH] Better (MIPS) ELF64 archive support
Hi Thiemo,
> 2001-12-04 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de>
>
> /bfd/ChangeLog
> * Makefile.am: split up BFD_LIBS like statements in BFD32_LIBS and
> BFD64_LIBS, make the latter depending on the availability of BFD64.
> Add archive64.c source file.
> * archive64.c: New file implementing bfd_elf64_archive_slurp_armap
> and bfd_elf64_archive_write_armap, code from elf64-mips.c
> * archive.c (bfd_slurp_armap): Add ELF64 archive support.
> * config.bfd (mips*-*-irix6*): Allow with BFD64 only.
> (mips64*el-*-linux*): Likewise.
> (mips*el-*-linux*): Likewise. Reorder entries.
> * configure.in (bfd_libs): Define in dependency of BFD64 and
> AC_SUBST it.
> * elf64-mips.c (mips_elf64_slurp_armap): Remove, use
> bfd_elf64_archive_slurp_armap instead.
> (mips_elf64_write_armap): Remove, use bfd_elf64_archive_write_armap
> instead.
Approved but with one slight worry:
> diff -BurpN source-orig/bfd/config.bfd source/bfd/config.bfd
>
> +#ifdef BFD64
> mips64*el-*-linux*)
> targ_defvec=bfd_elf32_tradlittlemips_vec
> targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec"
> ;;
> - mips*el-*-linux*)
> - targ_defvec=bfd_elf32_tradlittlemips_vec
> - targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec ecoff_little_vec ecoff_big_vec"
> - ;;
> mips64*-*-linux*)
> targ_defvec=bfd_elf32_tradbigmips_vec
> targ_selvecs="bfd_elf32_tradlittlemips_vec bfd_elf64_tradbigmips_vec bfd_elf64_tradlittlemips_vec"
> + ;;
> +#endif
> + mips*el-*-linux*)
> + targ_defvec=bfd_elf32_tradlittlemips_vec
> + targ_selvecs="bfd_elf32_tradbigmips_vec bfd_elf64_tradlittlemips_vec bfd_elf64_tradbigmips_vec ecoff_little_vec ecoff_big_vec"
> ;;
You appear to be moving the mipsel-linux target outside of the BFD64
enclosure, even though it contains vectors for 64 bit targets. Is
this deliberate ? Will it actually work if bfd is not configured to
enable 64 bit support ?
Cheers
Nick