]> git.proxmox.com Git - qemu.git/blame - disas.h
fdc-test: split test_media_change() test, so insert part can be reused
[qemu.git] / disas.h
CommitLineData
b9adb4a6
FB
1#ifndef _QEMU_DISAS_H
2#define _QEMU_DISAS_H
3
376253ec
AL
4#include "qemu-common.h"
5
ca20cf32 6#ifdef NEED_CPU_H
b9adb4a6 7/* Disassemble this for me please... (debugging). */
c27004ec 8void disas(FILE *out, void *code, unsigned long size);
f4359b9f
BS
9void target_disas(FILE *out, CPUArchState *env, target_ulong code,
10 target_ulong size, int flags);
376253ec 11
9349b4f9 12void monitor_disas(Monitor *mon, CPUArchState *env,
3476562d 13 target_ulong pc, int nb_insn, int is_physical, int flags);
b9adb4a6
FB
14
15/* Look up symbol for debugging purpose. Returns "" if unknown. */
c27004ec 16const char *lookup_symbol(target_ulong orig_addr);
ca20cf32 17#endif
b9adb4a6 18
49918a75
PB
19struct syminfo;
20struct elf32_sym;
21struct elf64_sym;
22
9f9f0309
PB
23#if defined(CONFIG_USER_ONLY)
24typedef const char *(*lookup_symbol_t)(struct syminfo *s, target_ulong orig_addr);
25#else
a8170e5e 26typedef const char *(*lookup_symbol_t)(struct syminfo *s, hwaddr orig_addr);
9f9f0309 27#endif
49918a75
PB
28
29struct syminfo {
30 lookup_symbol_t lookup_symbol;
e80cfcfc 31 unsigned int disas_num_syms;
49918a75
PB
32 union {
33 struct elf32_sym *elf32;
34 struct elf64_sym *elf64;
35 } disas_symtab;
e80cfcfc
FB
36 const char *disas_strtab;
37 struct syminfo *next;
49918a75
PB
38};
39
40/* Filled in by elfload.c. Simplistic, but will do for now. */
41extern struct syminfo *syminfos;
e80cfcfc 42
b9adb4a6 43#endif /* _QEMU_DISAS_H */