diff options
-rw-r--r-- | disas.h | 4 | ||||
-rw-r--r-- | linux-user/elfload.c | 4 |
2 files changed, 6 insertions, 2 deletions
@@ -22,7 +22,11 @@ struct syminfo; struct elf32_sym; struct elf64_sym; +#if defined(CONFIG_USER_ONLY) +typedef const char *(*lookup_symbol_t)(struct syminfo *s, target_ulong orig_addr); +#else typedef const char *(*lookup_symbol_t)(struct syminfo *s, target_phys_addr_t orig_addr); +#endif struct syminfo { lookup_symbol_t lookup_symbol; diff --git a/linux-user/elfload.c b/linux-user/elfload.c index 1d5f651..71ed2d6 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -1448,10 +1448,10 @@ static void load_symbols(struct elfhdr *hdr, int fd) s->disas_num_syms = nsyms; #if ELF_CLASS == ELFCLASS32 s->disas_symtab.elf32 = syms; - s->lookup_symbol = (lookup_symbol_t)lookup_symbolxx; + s->lookup_symbol = lookup_symbolxx; #else s->disas_symtab.elf64 = syms; - s->lookup_symbol = (lookup_symbol_t)lookup_symbolxx; + s->lookup_symbol = lookup_symbolxx; #endif s->next = syminfos; syminfos = s; |