This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 4/5] MIPS/GAS: Get rid of $at from o32 LD where possible


Hi,

 Here is a change to the o32 LD "A(b)" variant to make it use one of the 
target registers as a temporary as available.  Depending on the 
circumstances either the lower or the higher target register is used.  
The macro only resorts to $at in a pathological case like this:

	ld	$31, 0x10000($31)

This complements the change made to the "o(b)" variant, except here it is 
an optimisation only, rather than a bug fix.

2010-10-31  Maciej W. Rozycki  <macro@linux-mips.org>

	gas/
	* config/tc-mips.c (macro)[M_LD_AB]: Use one of the target 
	registers as a temporary if possible.
	[M_L_DAB, M_S_DAB, M_SD_AB]: Adjust accordingly.

	gas/testsuite/
	* gas/mips/ld.d: Replace $at with one of the target registers.
	* gas/mips/mips1@ld.d: Likewise.
	* gas/mips/mips1@ld-forward.d: Likewise.
	* gas/mips/ld-svr4pic.d: Likewise.
	* gas/mips/ld-xgot.d: Likewise.
	* gas/mips/ldstla-32.d: Likewise.
	* gas/mips/ldstla-32-shared.d: Likewise.
	* gas/mips/mips-abi32.d: Likewise.
	* gas/mips/mips-abi32-pic.d: Likewise.
	* gas/mips/mips-gp32-fp32.d: Likewise.
	* gas/mips/mips-gp32-fp32-pic.d: Likewise.
	* gas/mips/mips-gp32-fp64.d: Likewise.
	* gas/mips/mips-gp32-fp64-pic.d: Likewise.

 OK?

  Maciej

binutils-2.20.51-20100925-mips-gas-ld-a-base.patch
[Patch attached compressed due to its size.]

Attachment: binutils-2.20.51-20100925-mips-gas-ld-a-base.patch.bz2
Description: BZip2 compressed data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]