filename | src/x86dasm/x86dasm.h |
changeset | 1094:d2324eb67223 |
prev | 1091:186558374345 |
author | Nathan Keynes <nkeynes@lxdream.org> |
date | Fri Dec 16 10:08:45 2011 +1000 (12 years ago) |
permissions | -rw-r--r-- |
last change | Add volatile qualifier to return-address frobbing - works around optimizer bug in GCC versions after 4.2 |
view | annotate | diff | log | raw |
1 /**
2 * $Id$
3 *
4 * Wrapper around i386-dis to supply the same behaviour as the other
5 * disassembly functions.
6 *
7 * Copyright (c) 2005 Nathan Keynes.
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 */
20 #include <stdio.h>
21 #include "cpu.h"
22 #include "mem.h"
23 extern const struct cpu_desc_struct x86_cpu_desc;
25 typedef struct x86_symbol {
26 const char *name;
27 void *ptr;
28 } x86_symbol;
30 void x86_disasm_block( FILE *out, void *block, uint32_t len );
31 void x86_set_symtab( x86_symbol *symtab, int num_symbols );
32 void x86_disasm_init();
33 uintptr_t x86_disasm_instruction( uintptr_t pc, char *buf, int len, char *opcode );
34 void x86_print_symbolic_operand( char *buf, int hex, uintptr_t disp );
.