diff options
Diffstat (limited to 'ld/ldemul.h')
-rw-r--r-- | ld/ldemul.h | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/ld/ldemul.h b/ld/ldemul.h index 5efe4aa..0b9653e 100644 --- a/ld/ldemul.h +++ b/ld/ldemul.h @@ -109,9 +109,11 @@ extern void ldemul_extra_map_file_text extern int ldemul_emit_ctf_early (void); /* Called from per-target code to examine the strtab and symtab. */ -extern void ldemul_examine_strtab_for_ctf - (struct ctf_dict *, struct elf_sym_strtab *, bfd_size_type, - struct elf_strtab_hash *); +extern void ldemul_acquire_strings_for_ctf + (struct ctf_dict *, struct elf_strtab_hash *); +extern void ldemul_new_dynsym_for_ctf + (struct ctf_dict *, int symidx, struct elf_internal_sym *); + extern bfd_boolean ldemul_print_symbol (struct bfd_link_hash_entry *hash_entry, void *ptr); @@ -230,14 +232,22 @@ typedef struct ld_emulation_xfer_struct { int (*emit_ctf_early) (void); - /* Called to examine the string and symbol table late enough in linking that - they are finally laid out. If emit_ctf_early returns true, this is not - called and ldemul_maybe_emit_ctf() emits CTF in 'early' mode: otherwise, it - waits until 'late'. (Late mode needs explicit support at per-target link - time to get called at all). If set, called by ld when the examine_strtab + /* Called to examine the string table late enough in linking that it is + finally laid out. If emit_ctf_early returns true, this is not called, and + ldemul_maybe_emit_ctf emits CTF in 'early' mode: otherwise, it waits + until 'late'. (Late mode needs explicit support at per-target link time to + get called at all). If set, called by ld when the examine_strtab bfd_link_callback is invoked by per-target code. */ - void (*examine_strtab_for_ctf) (struct ctf_dict *, struct elf_sym_strtab *, - bfd_size_type, struct elf_strtab_hash *); + void (*acquire_strings_for_ctf) (struct ctf_dict *, struct elf_strtab_hash *); + + /* Called when a new symbol is added to the dynamic symbol table. If + emit_ctf_early returns true, this is not called, and ldemul_maybe_emit_ctf + emits CTF in 'early' mode: otherwise, it waits until 'late'. (Late mode + needs explicit support at per-target link time to get called at all). If + set, called by ld when the ctf_new_symbol bfd_link_callback is invoked by + per-target code. Called with a NULL symbol when no further symbols will be + provided. */ + void (*new_dynsym_for_ctf) (struct ctf_dict *, int, struct elf_internal_sym *); /* Called when printing a symbol to the map file. AIX uses this hook to flag gc'd symbols. */ |