ld.info: Output Section Discarding

Go forward to Output Section Attributes
Go backward to Output Section Keywords
Go up to SECTIONS
Go to the top op ld

Output section discarding

   The linker will not create output section which do not have any
contents.  This is for convenience when referring to input sections that
may or may not be present in any of the input files.  For example:
     .foo { *(.foo) }
will only create a `.foo' section in the output file if there is a
`.foo' section in at least one input file.
   If you use anything other than an input section description as an
output section command, such as a symbol assignment, then the output
section will always be created, even if there are no matching input
sections.
   The special output section name `/DISCARD/' may be used to discard
input sections.  Any input sections which are assigned to an output
section named `/DISCARD/' are not included in the output file.