From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kenneth Johansson Date: Mon, 14 Apr 2008 21:08:41 +0200 Subject: [U-Boot-Users] Fixup entries In-Reply-To: <009e01c89a95$ebd30960$c3791c20$@Tjernlund@transmode.se> References: <1207733537.6954.32.camel@localhost.localdomain> <1207740219.5826.71.camel@gentoo-jocke.transmode.se> <1207752413.6954.52.camel@localhost.localdomain> <005a01c89a5d$8e9c67b0$abd53710$@Tjernlund@transmode.se> <1207782004.8774.6.camel@duo> <009e01c89a95$ebd30960$c3791c20$@Tjernlund@transmode.se> Message-ID: <1208200121.7466.43.camel@localhost.localdomain> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Thu, 2008-04-10 at 01:03 +0200, Joakim Tjernlund wrote: > > -----Original Message----- > > From: kenneth johansson [mailto:kenneth at southpole.se] > > I had this misconception that the GOT was all that was needed for > > relocation. > > Could not find any useful information on what rules apply to gcc and > > binutils for handling stuff in this fixup section. > > > > Anybody have any information on this? > > Nope, never found anything either. To see a working one in u-boot, look at > mpc83xx start.S and its linker scripts. > > Jocke > > Found some code from gcc that do the relocation in the same way we want in u-boot. http://gcc.gnu.org/viewcvs/trunk/gcc/config/rs6000/eabi.asm?revision=130805&view=markup I tried to call __eabi and link with libgcc plus ecrti.o, ecrtn.o but in the end I had one silly undefined symbol(.Lfini) that I could not get past the linker. But I think copying that code over into u-boot could not hurt. And considering the age of that code I can't imagine that anybody has a tool chain that can't handle using the -mrelocatable. It would be nice to remove the manual relocation done when it's not needed it is just confusing.