This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: Should sh-*-* enable 64bit targets?
On Thu, May 25, 2006 at 12:47:57PM +0930, Alan Modra wrote:
> On Wed, May 24, 2006 at 07:33:03PM -0700, H. J. Lu wrote:
> > On Thu, May 25, 2006 at 10:48:25AM +0930, Alan Modra wrote:
> > > On Wed, May 24, 2006 at 05:58:22PM -0700, H. J. Lu wrote:
> > > > sh-*-linux*)
> > > > targ_defvec=bfd_elf32_shblin_vec
> > > > targ_selvecs=bfd_elf32_shlin_vec
> > > > -#ifdef BFD64
> > > > - targ_selvecs="${targ_selvecs} bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
> > > > -#endif
> > > > + targ64_selvecs="bfd_elf32_sh64lin_vec bfd_elf32_sh64blin_vec bfd_elf64_sh64lin_vec bfd_elf64_sh64blin_vec"
> > > > ;;
> > >
> > > You should have set want64=true here and in the other sh cases you
> > > changed to use targ64_selvecs.
> >
> > I am not sure what the original intention was. I assume they wanted
> > to enable 64bit targets if BFD was 64bit. That is what my change does
> > by setting targ64_selvecs.
>
> #ifdef in a shell script is just a comment. So the original config.bfd
> always included the 64-bit sh targets in target_selvecs. Your patch
> to use targ64_selvecs changes that behaviour. Please add want64=true.
I built the sh-linux cross binutils without my patch:
[hjl@gnu-13 binutils-import-cross]$ ./build-sh-linux/ld/ld-new -V
GNU ld version 2.17.50 20060524
Supported emulations:
shlelf_linux
shelf_linux
My patch doesn't change it. The question is what the original
intention was.
I don't think "#ifdef BFD64" is just a comment. targmatch.sed will put
them into targmatch.h:
#ifdef BFD64
...
#endif
H.J.