This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch] MIPS/Linux: Let one select the default ABI for 64-bit


cgd@broadcom.com writes:

> At Wed, 21 May 2003 11:18:21 +0000 (UTC), "Maciej W. Rozycki" wrote:
> >  Well, admittedly, "mips64" as an alias for n32 is a wacked-out name for
> > me.  I would assume <CPU>64 means full support for a <CPU> in it's 64-bit
> > mode.  The (n)64 ABI fullfills it, but the n32 one doesn't as it's support
> > for 64 bits is partial from the binutils' POV and minimal from the gcc's
> > one.
> 
> Uh, n32 support should either be complete in binutils right now, or
> should be "shortly."

I think the issue isn't whether or not n32 support is complete, but
that when using n32 you can't fully exploit the 64 bit address space.

However, I tend to agree that n32 should be the default since it ought
to be more efficient in most cases.  On the other hand, in principle,
it would be good to have a configuration which would make n64 the
default.  It just wouldn't be the configuration returned by
config.guess.

I've been worrying about MIPS configuration names a little more
recently.  This is obvious, but the GNU configuration scheme works
poorly for MIPS, since the configuration has to select CPU, ISA, ASE
and ABI.  When the scheme was designed the CPU implied the ISA and the
ABI.  For MIPS the CPU does of course imply the ISA and ASE, but
historical usage, plus a desire for the ability to compile programs
which run on generic chips, has led people to specify the ISA and ASE
in the configuration name, rather than the CPU.

On Intel ia32, the compiler always generates i386 code by default, no
matter how it is configured.  You need to use -march to get anything
else.  If only we had made similar choices for MIPS long ago.

Ian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]