ia32_settings.h 900 B

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