This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: mips branches broken between 2002-09-05 and 2002-09-06
- From: "Maciej W. Rozycki" <macro at ds2 dot pg dot gda dot pl>
- To: cgd at broadcom dot com
- Cc: Alan Modra <amodra at bigpond dot net dot au>, binutils at sources dot redhat dot com, echristo at redhat dot com
- Date: Tue, 10 Sep 2002 18:46:57 +0200 (MET DST)
- Subject: Re: mips branches broken between 2002-09-05 and 2002-09-06
- Organization: Technical University of Gdansk
- Reply-to: "Maciej W. Rozycki" <macro at ds2 dot pg dot gda dot pl>
On 10 Sep 2002 cgd@broadcom.com wrote:
> However, a question (for H.J. too):
>
> So, when actually overriding the symbols being called via _branches_,
> what result is expected other than "relocation overflow" or similar
> for most of the relocations to symbols other than the one originally
> used? (or even that one, if it's not in the same file?)
>
> (I don't think that's a problem. In code where symbols can be
> overridden, it's not smart, offset-wise, to use mips branch
> instructions... and it's better to get an error than to happily,
> silentely invoke the non-overridden symbol.)
Hmm, AFAIK there is no relocation defined for branches in the MIPS SYSV
ABI, so there is nothing to override when doing dynamic linking. There is
a relocation used by binutils internally (BFD_RELOC_16_PCREL_S2) and
embedded targets seem to use a GNU-specific reloc (R_MIPS_GNU_REL16_S2) to
express it externally, but that's irrelevant.
--
+ Maciej W. Rozycki, Technical University of Gdansk, Poland +
+--------------------------------------------------------------+
+ e-mail: macro@ds2.pg.gda.pl, PGP key available +