This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: How to preserve section group for ld -r?
On Thu, Apr 29, 2004 at 03:05:44PM -0400, Ian Lance Taylor wrote:
> "H. J. Lu" <hjl@lucon.org> writes:
>
> > The current linker doesn't preserve section group for ld -r since
> > the group section isn't mentioned in the linker script. But I am
> > having difficulty adding the group section to the linker script. The
> > plan is
> >
> > 1. All group sections should have name of ".group.signature" since
> > the linker script doesn't know SHT_GROUP.
> > 2. They will be marked with SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD.
> > 3. Modify the linker scripte to preserve ".group.*" sections for ld -r.
> >
> > How do I express #3 in a linker script?
>
> I think we should steer away from relying on section names where that
> is reasonable. Since ld -r normally preserves input sections which
> are not explicitly mentioned in the linker script, and that is more or
> less what we want to have happen, I don't see any reason why we should
> impose a restriction on section names here. I think ld -r should just
> preserve input SHT_GROUP sections, without relying on the linker
> script to make that work.
>
> I haven't followed the SHT_GROUP work much, so I'm not sure how best
> to handle this. It would mainly depend upon how SHT_GROUP is exposed
> in the BFD interface. We may need to address that, so that
> lang_place_orphans() do the right thing.
>
> I'm not opposed to adding syntax to linker scripts to permit SHT_GROUP
> sections to be defined, but I don't think we should rely on such
> syntax to make ld -r work properly.
>
You are right. The bug is somewhere else. I am working on it.
H.J.