This is the mail archive of the
newlib@sources.redhat.com
mailing list for the newlib project.
Re: [patch] adjust libgloss addresses for 64-bit
Paul Koning wrote:
> >>>>> "Maciej" == Maciej W Rozycki <macro@linux-mips.org> writes:
>
> Maciej> But in principle you are right for consistency the presence
> Maciej> or the lack of the "d" prefix should imply the size of the
> Maciej> operands used as it is so for other assembly instructions.
> Maciej> So how about disabling the "wrong" macros completely? That
> Maciej> is using as_bad() for these two "dla/la used to load..."
> Maciej> messages just below "do_la" that are currently warnings.
> Maciej> After all these load address macros are the only place where
> Maciej> non-default address calculation rules can be argued about at
> Maciej> all -- the interpretation of e.g.:
>
> Maciej> lh $2, 0x80000000 lh $2, 0x80000000($3) lh $2, foo +
> Maciej> 0x80000000($3) lh $2, foo + 0xc000000080000000($3)
>
> One answer would be to use an implicit DLA for N64, and LA otherwise.
> I was thinking more about explicitly written LA vs. DLA.
>
> All this demonstrates once again that the whole built-in macro stuff
> in the MIPS assembler was a design blunder from day one. Sigh.
>
> Fortunately, GCC no longer uses any of this...
For 64bit non-PIC it still does.
Thiemo