COMDAT Section
COMDAT sections are uniquely identified by their section name
(sh_name
). If the link-editor encounters multiple sections of
type SHT_SUNW_COMDAT
, with the same section name, the first section is
retained and the rest discarded. Any relocations that are applied to a discarded
SHT_SUNW_COMDAT
section are ignored. Any symbols that are defined in a
discarded section are removed.
Additionally, the link-editor supports the section naming convention that is used
for section reordering when the compiler is invoked with the -xF
option. If a
function is placed in a SHT_SUNW_COMDAT
section that is named
.
sectname
%
funcname,
the final SHT_SUNW_COMDAT
sections that are retained are coalesced into the
section that is named .
sectname. This method can
be used to place SHT_SUNW_COMDAT
sections into the
.text
, .data
, or any other section as their final
destination.