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