RFC: Mark a section to be discarded for DSO and executable

Rod Evans Rod.Evans@sun.com
Tue Jan 9 22:16:00 GMT 2007


H. J. Lu wrote:
> With LTO, an object file may contain sections with IL, which
> can be discarded when building DSO and executable. Currently we can't
> mark such sections with gABI. With GNU linker, we can use a
> linker script to discard such sections. But it will be more generic
> to make a section to be discarded for DSO and executable in gABI.
> In that case, we don't need a special linker script to discard
> such sections. Something like
> 
> #define SHF_DISCARD		0x800
> 
> would work.

We invented:

#define      SHF_EXCLUDE     0x80000000

a long time ago, which is applied to some sections within relocatable
objects.  Sections tagged with this flag are removed from any final
object (executables of .so's).

This probably should have followed a SHF_SUNW_ conversion, but this
was invented long before we thought about OS specific flags.



  SHF_EXCLUDE

     This section is excluded from input to the link-edit of an executable
     or shared object. This flag is ignored if the SHF_ALLOC flag is also
     set, or if relocations exist against the section.

-- 

Rod.



More information about the Binutils mailing list