This is the mail archive of the binutils@sources.redhat.com 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]

Re: Forcing gas not to resolve jump offsets


Hi Alan,

Thanks!

I implemented the tc_fix_adjustable function and told it not to adjust
call/jump targets that are non-local.... problem solved.

The ip2k port has a TC_FORCE_RELOCATION function but it never gets called...
is this anything to worry about?

Thanks again.

Nick

----- Original Message -----
From: "Alan Modra" <amodra@bigpond.net.au>
To: <jafa@silicondust.com>
Sent: Monday, December 16, 2002 7:58 PM
Subject: Re: Forcing gas not to resolve jump offsets


*This message was transferred with a trial version of CommuniGate(tm) Pro*
On Mon, Dec 16, 2002 at 06:52:56PM -0800, Nick Kelsey wrote:
> I am wondering how I can tell gas not to resolve jump/call target symbols
> that jump/call to a different section, even if they are in the same file?

You need to do adjust TC_FORCE_RELOCATION for ip2k.  In your case this
means changing tc-ip2k.c:ip2k_force_relocation.  The function should
return 1 for jump target fixups, which you likely can discriminate
from other fixups by looking at the relocation type.  You may also
need to define tc_fix_adjustable to prevent gas converting a fixup
against your jump target symbols to a fixup against a section symbol.

--
Alan Modra
IBM OzLabs - Linux Technology Centre



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