This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH] Fix distinction of 32/64bit addresses in MIPS gas
H . J . Lu wrote:
> > I don't really _know_ what ABI it uses. I had always thought of it as
> > "o64", which in my mind was "o32 naively extended for 64-bit GPRs,"
> > but really i don't know that that's correct.
It doesn't use the O64 header flag, so there's probably a difference.
> > In fact, I don't really
> > _care_ what ABI it uses. We understand the calling conventions well
> > enough for embedded development use, which is where we're using it.
> I think that is ok as long as R_MIPS_64 is not used for o32 binaries.
> Maybe it is time to give a new BFD target for mips64-elf since it does
> represent a different ABI which includes R_MIPS_64.
How would you distinguish these object files? The O32 header flag
isn't mandatory for o32, and I don't think introducing a new one for
this yet-unnamed ABI makes thing better.
> R_MIPS_64 should be
> forbidden for o32 binaries.
It is only used with -mlong64, which kills ABI conformance anyway.
It might be a good idea to clear any ABI header flag when such
an option is in effect, It might also be a good thing to remove
the O32 flag completely, since it can't denote a ABI conformant
o32 binary. However, I don't know what tools will get broken then.