1 | #ifndef IA32_SETTINGS_H |
2 | #define IA32_SETTINGS_H |
3 | |
4 | #include "libdis.h" |
5 | |
6 | typedef struct { |
7 | /* options */ |
8 | unsigned char endian, /* 0 = big, 1 = little */ |
9 | wc_byte, /* wildcard byte */ |
10 | max_insn, /* max insn size */ |
11 | sz_addr, /* default address size */ |
12 | sz_oper, /* default operand size */ |
13 | sz_byte, /* # bits in byte */ |
14 | sz_word, /* # bytes in machine word */ |
15 | sz_dword; /* # bytes in machine dword */ |
16 | unsigned int id_sp_reg, /* id of stack pointer */ |
17 | id_fp_reg, /* id of frame pointer */ |
18 | id_ip_reg, /* id of instruction pointer */ |
19 | id_flag_reg, /* id of flags register */ |
20 | offset_gen_regs, /* start of general regs */ |
21 | offset_seg_regs, /* start of segment regs */ |
22 | offset_fpu_regs; /* start of floating point regs */ |
23 | /* user-controlled settings */ |
24 | enum x86_options options; |
25 | } ia32_settings_t; |
26 | |
27 | #endif |
28 | |