stage one of gas reloc rewrite

Ralf Baechle ralf@uni-koblenz.de
Sun Sep 1 17:05:00 GMT 2002


On Thu, Aug 29, 2002 at 11:24:40PM +0930, Alan Modra wrote:

> The non-ELF mips targets don't even build, but that breakage wasn't
> caused by my changes.  No new regressions, except for mips and sh64,
> and after examining the test results in detail, I reckon the
> "failures" are actually due to bugs being fixed.  For instance, the
> mips beq.s test has
> 
> 	.globl	text_label
> 	.text
> text_label:	
> 	beq	$4,$5,text_label
> 
> then expects that the "beq" should resolve without a relocation.  I
> think that ELF shared library requirements on global symbols demand
> that this be resolved by the linker, ie. a reloc should be emitted,
> but I'm willing to be convinced otherwise by the mips camp.  For that
> reason, I haven't adjusted the mips testsuite.

The branch has to resolve without relocation because there isn't even
a suitable relocation type to represent this in ABI ELF.

Which at times can be an annoyance that requires replacing branches to
destinations in other files to be replaced by a branch to a jump which
then jumps to the actual target which of course is less efficient.
Maybe time for a GNU extension?

  Ralf



More information about the Binutils mailing list