accept 64-bit constant addresses in mips n32

Thiemo Seufer ica2_ts@csv.ica.uni-stuttgart.de
Tue Apr 8 11:35:00 GMT 2003


Alexandre Oliva wrote:
> On Apr  8, 2003, Thiemo Seufer <ica2_ts@csv.ica.uni-stuttgart.de> wrote:
> 
> > Trditionally it does more than that. The purpose of .set mipsX is to
> > allow full exploitation of the architecture's capabilities. ABI-imposed
> > register width restrictions are the obvious example.
> 
> Fine.  One thing is to say `it's now ok to use the full 64 bits of
> this register for an integer'.  Saying `assume pointers can now be
> 64-bits wide' is pushing it a bit too far.

The assembler has no notion of 'pointers', it only knows about
addresses. Actually loading all 64 bits of a register if requested to
is IMHO exactly the right thing in this case.

> Consider non-literal
> values, that have to be loaded from a GOT. Would we have to somehow
> generate 64-bit GOT entries if we find .mips3 in an n32 program?  I
> hope not :-)

It's the programmer's responsibility to care about this.


Thiemo



More information about the Binutils mailing list