[PATCH] Indicate dependency on personality routines for ARM EHABI

Richard Earnshaw rearnsha@gcc.gnu.org
Wed Feb 9 18:26:00 GMT 2005


On Wed, 2005-02-09 at 16:58, Ian Lance Taylor wrote:
> Richard Earnshaw <rearnsha@gcc.gnu.org> writes:
> 
> > > More generally, I think it's kind of dubious to use a zero reloc to
> > > mean anything at all.  And why do you need a relocation entry?  Why is
> > > it not sufficient to enter the symbol in the symbol table as an
> > > undefined symbol?  Is the use of a zero reloc mandated by the ARM ABI?
> > 
> > Because the unwind module only weakly links to the personality modules
> > (but it is the one that ends up calling them).
> > 
> > The module that needs the unwinding has to provide the strong reference
> > to ensure that it gets included in the link set.
> > 
> > Doing it this way ensures that only personality modules that are needed
> > get included in the final image.
> 
> I would expect a strong undefined symbol would achieve the same effect
> without the relocation entry.

I suspect that wouldn't work if you did unused section elimination.

> But if the ABI requires the relocation entry, that is fine.

It's the model that we chose to implement it, so yes, it's needed.

R.



More information about the Binutils mailing list