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