[RFC] PR ld/13621

Richard Henderson rth@redhat.com
Mon Jan 30 00:57:00 GMT 2012


This PR is about elflint warning about symbols outside of the section
with which they are associated.

The problem can be seen with just about any zero-sized section, nearly
all of which are removed by strip_excluded_output_sections.  Then, the
symbols are relocated to a "near by" section by _bfd_fix_excluded_sec_syms.

This elflint warning will affect essentially all binaries built with
gcc4.7 because of the crt symbol __TMC_END__, present in the normally
empty section .tm_clone_table.  Thus it seems worthwhile to fix this.

At first I attempted to SEC_KEEP any section with global symbols.  But
this ran into all sorts of testsuite failures re .got.  In those cases
the _GLOBAL_OFFSET_TABLE_ symbol still exists, which causes .got to 
be kept instead of removed as unused later in the link.

A second best solution would seem to be to merely move the offending
symbols to the ABS section rather than associate them with some random
section.

Thoughts?


r~
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: z1
URL: <https://sourceware.org/pipermail/binutils/attachments/20120130/b890b179/attachment.ksh>


More information about the Binutils mailing list