Improvements and fixes for mips n32/n64 relocations
Eric Christopher
echristo@redhat.com
Fri Apr 11 00:07:00 GMT 2003
On Tue, 2003-04-08 at 03:19, Alexandre Oliva wrote:
> We used to generate really lousy code for n32/n64. For example, we
> used to emit a constant `addi reg,reg,0' after a GOT_DISP load that
> served no purpose at all. We used to waste GOT entries by not using
> GOT_PAGE/GOT_OFST properly, and not placing GOT_OFST in the load or
> store instruction that causes us to use this addressing mode. The
> code generated for -xgot in n32/n64 was completely broken. We used to
> not decay GOT_PAGE/GOT_OFST to GOT_DISP/addend on symbols that could
> be overridden in other shared libraries or in the main executable. We
> used to emit addu/addiu when doing pointer arithmetics on n32, unlike
> the recommended add/addi in the MIPSpro N32 Handbook: ``PTR_ADDU expands
> to addu for o32 and to add for n32.''
>
> Ok to install?
>
Yes with the change I noticed offline and the one that I missed that cgd
spotted and the changes you noticed :)
-eric
>
> ______________________________________________________________________
--
Eric Christopher <echristo@redhat.com>
More information about the Binutils
mailing list