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