diff options
Diffstat (limited to 'ld/ldemul.h')
-rw-r--r-- | ld/ldemul.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ld/ldemul.h b/ld/ldemul.h index aa014ae..c58d4c2 100644 --- a/ld/ldemul.h +++ b/ld/ldemul.h @@ -115,9 +115,10 @@ 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 bool ldemul_print_symbol (struct bfd_link_hash_entry *hash_entry, void *ptr); +extern struct bfd_link_hash_entry * ldemul_find_alt_start_symbol + (struct bfd_sym_chain *); typedef struct ld_emulation_xfer_struct { /* Run before parsing the command line and script file. @@ -259,6 +260,11 @@ typedef struct ld_emulation_xfer_struct { bool (*print_symbol) (struct bfd_link_hash_entry *hash_entry, void *ptr); + /* Called when ENTRY->name cannot be found by a direct lookup in INFO->hash. + Allows emulations to try variations of the name. */ + struct bfd_link_hash_entry * (*find_alt_start_symbol) + (struct bfd_sym_chain *entry); + } ld_emulation_xfer_type; typedef enum { |