2.10.91: A problem with R_MIPS_CALL relocations within gas
Hiroyuki Machida
machida@sm.sony.co.jp
Mon Nov 20 18:57:00 GMT 2000
From: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>
Subject: Re: 2.10.91: A problem with R_MIPS_CALL relocations within gas
Date: Mon, 20 Nov 2000 13:11:14 +0100 (MET)
>
> You are right. Do we have any means to detect the common sequence of "la
> $25, <sym>", "jalr $25" then? We could use that to decide to emit CALL
> relocations unconditionally when we have no information from gcc (or other
> compiler).
>
I guess we have three ways...
1. Change GCC to emit jal <symbol> if target is GAS and PIC.
This is the easist way, but we lose the opportunity to optimize
as Ian pointed out.
2. Make new macro like "la_lazy" to inform lazy-bind-able symbol to GAS.
Change GCC and GAS to use it. This chage is not so hard. But in
this way, we have to chage both GCC and GAS at the same time.
I don't know everyone accept such a kind of change.
3. Change GAS to track t9 register and detect lazy-bind-able.
This change can be harder than aboves.
---
Hiroyuki Machida
Creative Station SCE Inc.
More information about the Binutils
mailing list