aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf-eh-frame.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2015-10-23 22:23:05 +1030
committerAlan Modra <amodra@gmail.com>2015-10-23 22:26:25 +1030
commit1cce69b9dc8c58884c3cc4a8928fb234294e6886 (patch)
treead6bb7d70a998457311dd8034c00df20b11699d4 /bfd/elf-eh-frame.c
parentbe83aa76d2877770c23d7c2bde0319564a8f7e48 (diff)
downloadfsf-binutils-gdb-1cce69b9dc8c58884c3cc4a8928fb234294e6886.zip
fsf-binutils-gdb-1cce69b9dc8c58884c3cc4a8928fb234294e6886.tar.gz
fsf-binutils-gdb-1cce69b9dc8c58884c3cc4a8928fb234294e6886.tar.bz2
Handle __start_* and __stop_* symbols in --gc-sections
PR ld/11133 PR ld/19161 PR ld/19167 * elflink.c (_bfd_elf_gc_mark_hook): Delete code handling __start_* and __stop_* symbol refs. (_bfd_elf_gc_mark_rsec): Add start_stop parameter. Handle __start_* and __stop_* symbol refs here.. (_bfd_elf_gc_mark_reloc): ..and here. * elf-bfd.h (_bfd_elf_gc_mark_hook): Update prototype. * elf-eh-frame.c (_bfd_elf_parse_eh_frame): Update _bfd_elf_gc_mark_rsec call.
Diffstat (limited to 'bfd/elf-eh-frame.c')
-rw-r--r--bfd/elf-eh-frame.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/bfd/elf-eh-frame.c b/bfd/elf-eh-frame.c
index 7d65dae..e303189 100644
--- a/bfd/elf-eh-frame.c
+++ b/bfd/elf-eh-frame.c
@@ -902,7 +902,8 @@ _bfd_elf_parse_eh_frame (bfd *abfd, struct bfd_link_info *info,
REQUIRE (GET_RELOC (buf));
/* Chain together the FDEs for each section. */
- rsec = _bfd_elf_gc_mark_rsec (info, sec, gc_mark_hook, cookie);
+ rsec = _bfd_elf_gc_mark_rsec (info, sec, gc_mark_hook,
+ cookie, NULL);
/* RSEC will be NULL if FDE was cleared out as it was belonging to
a discarded SHT_GROUP. */
if (rsec)