MIPS stubs in Gold
Ian Lance Taylor
iant@google.com
Wed Jun 1 15:43:00 GMT 2011
Aleksandar Simeonov <Aleksandar.Simeonov@RT-RK.com> writes:
> Again I have problem that occupy me for some time and for what I can't
> find solution. Situation is as follows (next text is taken from
> elfxx-mips.c from ld):
>
> "Information about a non-PIC interface to a PIC function. There are
> two ways of creating these interfaces. The first is to add:
>
> lui $25,%hi(func)
> addiu $25,$25,%lo(func)
>
> immediately before a PIC function "func". The second is to add:
>
> lui $25,%hi(func)
> j func
> addiu $25,$25,%lo(func)
>
> to a separate trampoline section.
>
> Stubs of the first kind go in a new section immediately before the
> target function. Stubs of the second kind go in a single section
> pointed to by the hash table's "strampoline" field."
>
> I tried to find something similar in Gold for other architectures, but
> without success. Can you give me some suggestions where to look and what
> to do to implement this.
The ARM backend implements stubs, e.g., for calls between ARM and Thumb
code. Search for "stub" and "Stub". You probably don't have to do
anything as complex for the MIPS backend. At least, I hope not.
Ian
More information about the Binutils
mailing list