1 | /* udis86 - libudis86/syn.h |
2 | * |
3 | * Copyright (c) 2002-2009 |
4 | * All rights reserved. |
5 | * |
6 | * Redistribution and use in source and binary forms, with or without modification, |
7 | * are permitted provided that the following conditions are met: |
8 | * |
9 | * * Redistributions of source code must retain the above copyright notice, |
10 | * this list of conditions and the following disclaimer. |
11 | * * Redistributions in binary form must reproduce the above copyright notice, |
12 | * this list of conditions and the following disclaimer in the documentation |
13 | * and/or other materials provided with the distribution. |
14 | * |
15 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND |
16 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
17 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
18 | * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR |
19 | * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
20 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; |
21 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON |
22 | * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
23 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
24 | * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
25 | */ |
26 | #ifndef UD_SYN_H |
27 | #define UD_SYN_H |
28 | |
29 | #include "udis86_types.h" |
30 | #ifndef __UD_STANDALONE__ |
31 | # include <stdarg.h> |
32 | #endif /* __UD_STANDALONE__ */ |
33 | |
34 | extern const char* const ud_reg_tab[]; |
35 | |
36 | uint64_t ud_syn_rel_target(struct ud*, struct ud_operand*); |
37 | |
38 | #ifdef __GNUC__ |
39 | int ud_asmprintf(struct ud *u, const char *fmt, ...) |
40 | __attribute__ ((format (printf, 2, 3))); |
41 | #else |
42 | int ud_asmprintf(struct ud *u, const char *fmt, ...); |
43 | #endif |
44 | |
45 | void ud_syn_print_addr(struct ud *u, uint64_t addr); |
46 | void ud_syn_print_imm(struct ud* u, const struct ud_operand *op); |
47 | void ud_syn_print_mem_disp(struct ud* u, const struct ud_operand *, int sign); |
48 | |
49 | #endif /* UD_SYN_H */ |
50 | |
51 | /* |
52 | vim: set ts=2 sw=2 expandtab |
53 | */ |
54 | |