aboutsummaryrefslogtreecommitdiff
path: root/ld/ld.texinfo
diff options
context:
space:
mode:
authorfincs <fincs.alt1@gmail.com>2016-12-16 13:42:02 +1030
committerAlan Modra <amodra@gmail.com>2016-12-16 13:49:03 +1030
commit221855059a11ab76aa909a5df4104354f9384139 (patch)
treee1bd030fe42b33167faff27c3df182cc6843054d /ld/ld.texinfo
parent4c4067e410581fe5c6190407b4fd410e7b71f9e4 (diff)
downloadgdb-221855059a11ab76aa909a5df4104354f9384139.zip
gdb-221855059a11ab76aa909a5df4104354f9384139.tar.gz
gdb-221855059a11ab76aa909a5df4104354f9384139.tar.bz2
Implement and document --gc-keep-exported
include/ * bfdlink.h (struct bfd_link_info): Add gc_keep_exported. bfd/ * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Add handling for info->gc_keep_exported. (bfd_elf_gc_sections): Likewise. ld/ * ld.texinfo: Document --gc-keep-exported. * ldlex.h (enum option_values): Add OPTION_GC_KEEP_EXPORTED. * lexsup.c (parse_args): Add handling for --gc-keep-exported.
Diffstat (limited to 'ld/ld.texinfo')
-rw-r--r--ld/ld.texinfo12
1 files changed, 12 insertions, 0 deletions
diff --git a/ld/ld.texinfo b/ld/ld.texinfo
index ec7ff1b..17503eb 100644
--- a/ld/ld.texinfo
+++ b/ld/ld.texinfo
@@ -1558,6 +1558,18 @@ default behaviour (of not listing the sections that are removed) can
be restored by specifying @samp{--no-print-gc-sections} on the command
line.
+@kindex --gc-keep-exported
+@cindex garbage collection
+@item --gc-keep-exported
+When @samp{--gc-sections} is enabled, this option prevents garbage
+collection of unused input sections that contain global symbols having
+default or protected visibility. This option is intended to be used for
+executables where unreferenced sections would otherwise be garbage
+collected regardless of the external visibility of contained symbols.
+Note that this option has no effect when linking shared objects since
+it is already the default behaviour. This option is only supported for
+ELF format targets.
+
@kindex --print-output-format
@cindex output format
@item --print-output-format