00001 #ifndef _QEMU_DISAS_H
00002 #define _QEMU_DISAS_H
00003
00004
00005 void disas(FILE *out, void *code, unsigned long size);
00006 void target_disas(FILE *out, target_ulong code, target_ulong size, int flags);
00007 void monitor_disas(CPUState *env,
00008 target_ulong pc, int nb_insn, int is_physical, int flags);
00009
00010
00011 const char *lookup_symbol(target_ulong orig_addr);
00012
00013 struct syminfo;
00014 struct elf32_sym;
00015 struct elf64_sym;
00016
00017 typedef const char *(*lookup_symbol_t)(struct syminfo *s, target_ulong orig_addr);
00018
00019 struct syminfo {
00020 lookup_symbol_t lookup_symbol;
00021 unsigned int disas_num_syms;
00022 union {
00023 struct elf32_sym *elf32;
00024 struct elf64_sym *elf64;
00025 } disas_symtab;
00026 const char *disas_strtab;
00027 struct syminfo *next;
00028 };
00029
00030
00031 extern struct syminfo *syminfos;
00032
00033 #endif