GDB (API)
|
#include "defs.h"
#include "opcode/i386.h"
#include "arch-utils.h"
#include "command.h"
#include "dummy-frame.h"
#include "dwarf2-frame.h"
#include "doublest.h"
#include "frame.h"
#include "frame-base.h"
#include "frame-unwind.h"
#include "inferior.h"
#include "gdbcmd.h"
#include "gdbcore.h"
#include "gdbtypes.h"
#include "objfiles.h"
#include "osabi.h"
#include "regcache.h"
#include "reggroups.h"
#include "regset.h"
#include "symfile.h"
#include "symtab.h"
#include "target.h"
#include "value.h"
#include "dis-asm.h"
#include "disasm.h"
#include "remote.h"
#include "exceptions.h"
#include "gdb_assert.h"
#include "gdb_string.h"
#include "i386-tdep.h"
#include "i387-tdep.h"
#include "i386-xstate.h"
#include "record.h"
#include "record-full.h"
#include <stdint.h>
#include "features/i386/i386.c"
#include "features/i386/i386-avx.c"
#include "features/i386/i386-mmx.c"
#include "ax.h"
#include "ax-gdb.h"
#include "stap-probe.h"
#include "user-regs.h"
#include "cli/cli-utils.h"
#include "expression.h"
#include "parser-defs.h"
#include <ctype.h>
Go to the source code of this file.
Defines | |
#define | I386_NUM_SAVED_REGS I386_NUM_GREGS |
#define | I386_MAX_MATCHED_INSN_LEN 6 |
#define | LOW_RETURN_REGNUM I386_EAX_REGNUM /* %eax */ |
#define | HIGH_RETURN_REGNUM I386_EDX_REGNUM /* %edx */ |
#define | PREFIX_REPZ 0x01 |
#define | PREFIX_REPNZ 0x02 |
#define | PREFIX_LOCK 0x04 |
#define | PREFIX_DATA 0x08 |
#define | PREFIX_ADDR 0x10 |
#define | I386_SAVE_FPU_REGS 0xfffd |
#define | I386_SAVE_FPU_ENV 0xfffe |
#define | I386_SAVE_FPU_ENV_REG_STACK 0xffff |
#define | I386_RECORD_FULL_ARCH_LIST_ADD_REG(regnum) record_full_arch_list_add_reg (ir.regcache, ir.regmap[(regnum)]) |
Enumerations | |
enum | { OT_BYTE = 0, OT_WORD, OT_LONG, OT_QUAD, OT_DQUAD } |
enum | { OP_ADDL, OP_ORL, OP_ADCL, OP_SBBL, OP_ANDL, OP_SUBL, OP_XORL, OP_CMPL } |
Functions | |
int | i386_byte_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_word_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_dword_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_ymm_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_xmm_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_fp_regnum_p (struct gdbarch *gdbarch, int regnum) |
int | i386_fpc_regnum_p (struct gdbarch *gdbarch, int regnum) |
const char * | i386_pseudo_register_name (struct gdbarch *gdbarch, int regnum) |
struct displaced_step_closure * | i386_displaced_step_copy_insn (struct gdbarch *gdbarch, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) |
void | i386_displaced_step_fixup (struct gdbarch *gdbarch, struct displaced_step_closure *closure, CORE_ADDR from, CORE_ADDR to, struct regcache *regs) |
CORE_ADDR | i386_skip_main_prologue (struct gdbarch *gdbarch, CORE_ADDR pc) |
struct type * | i387_ext_type (struct gdbarch *gdbarch) |
struct type * | i386_pseudo_register_type (struct gdbarch *gdbarch, int regnum) |
void | i386_pseudo_register_read_into_value (struct gdbarch *gdbarch, struct regcache *regcache, int regnum, struct value *result_value) |
void | i386_pseudo_register_write (struct gdbarch *gdbarch, struct regcache *regcache, int regnum, const gdb_byte *buf) |
void | i386_supply_gregset (const struct regset *regset, struct regcache *regcache, int regnum, const void *gregs, size_t len) |
void | i386_collect_gregset (const struct regset *regset, const struct regcache *regcache, int regnum, void *gregs, size_t len) |
struct regset * | i386_regset_from_core_section (struct gdbarch *gdbarch, const char *sect_name, size_t sect_size) |
CORE_ADDR | i386_pe_skip_trampoline_code (struct frame_info *frame, CORE_ADDR pc, char *name) |
int | i386_sigtramp_p (struct frame_info *this_frame) |
int | i386_stap_is_single_operand (struct gdbarch *gdbarch, const char *s) |
int | i386_stap_parse_special_token (struct gdbarch *gdbarch, struct stap_parse_info *p) |
void | i386_elf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) |
void | i386_svr4_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) |
int | i386_register_reggroup_p (struct gdbarch *gdbarch, int regnum, struct reggroup *group) |
int | i386_process_record (struct gdbarch *gdbarch, struct regcache *regcache, CORE_ADDR input_addr) |
void | _initialize_i386_tdep (void) |
Variables | |
struct i386_insn | i386_frame_setup_skip_insns [] |
struct i386_insn | i386_tramp_chain_in_reg_insns [] |
struct i386_insn | i386_tramp_chain_on_stack_insns [] |
#define HIGH_RETURN_REGNUM I386_EDX_REGNUM /* %edx */ |
Definition at line 2501 of file i386-tdep.c.
#define I386_MAX_MATCHED_INSN_LEN 6 |
Definition at line 1133 of file i386-tdep.c.
#define I386_NUM_SAVED_REGS I386_NUM_GREGS |
Definition at line 815 of file i386-tdep.c.
#define I386_RECORD_FULL_ARCH_LIST_ADD_REG | ( | regnum | ) | record_full_arch_list_add_reg (ir.regcache, ir.regmap[(regnum)]) |
Definition at line 4338 of file i386-tdep.c.
#define I386_SAVE_FPU_ENV 0xfffe |
Definition at line 4269 of file i386-tdep.c.
#define I386_SAVE_FPU_ENV_REG_STACK 0xffff |
Definition at line 4270 of file i386-tdep.c.
#define I386_SAVE_FPU_REGS 0xfffd |
Definition at line 4268 of file i386-tdep.c.
#define LOW_RETURN_REGNUM I386_EAX_REGNUM /* %eax */ |
Definition at line 2500 of file i386-tdep.c.
#define PREFIX_ADDR 0x10 |
Definition at line 3954 of file i386-tdep.c.
#define PREFIX_DATA 0x08 |
Definition at line 3953 of file i386-tdep.c.
#define PREFIX_LOCK 0x04 |
Definition at line 3952 of file i386-tdep.c.
#define PREFIX_REPNZ 0x02 |
Definition at line 3951 of file i386-tdep.c.
#define PREFIX_REPZ 0x01 |
Definition at line 3950 of file i386-tdep.c.
anonymous enum |
Definition at line 3957 of file i386-tdep.c.
anonymous enum |
Definition at line 3967 of file i386-tdep.c.
void _initialize_i386_tdep | ( | void | ) |
int i386_byte_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 143 of file i386-tdep.c.
void i386_collect_gregset | ( | const struct regset * | regset, |
const struct regcache * | regcache, | ||
int | regnum, | ||
void * | gregs, | ||
size_t | len | ||
) |
Definition at line 3218 of file i386-tdep.c.
struct displaced_step_closure* i386_displaced_step_copy_insn | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs | ||
) | [read] |
Definition at line 550 of file i386-tdep.c.
void i386_displaced_step_fixup | ( | struct gdbarch * | gdbarch, |
struct displaced_step_closure * | closure, | ||
CORE_ADDR | from, | ||
CORE_ADDR | to, | ||
struct regcache * | regs | ||
) |
Definition at line 587 of file i386-tdep.c.
int i386_dword_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 165 of file i386-tdep.c.
void i386_elf_init_abi | ( | struct gdbarch_info | info, |
struct gdbarch * | gdbarch | ||
) |
Definition at line 3772 of file i386-tdep.c.
int i386_fp_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 234 of file i386-tdep.c.
int i386_fpc_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 246 of file i386-tdep.c.
CORE_ADDR i386_pe_skip_trampoline_code | ( | struct frame_info * | frame, |
CORE_ADDR | pc, | ||
char * | name | ||
) |
Definition at line 3342 of file i386-tdep.c.
int i386_process_record | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
CORE_ADDR | input_addr | ||
) |
Definition at line 4342 of file i386-tdep.c.
const char* i386_pseudo_register_name | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 273 of file i386-tdep.c.
void i386_pseudo_register_read_into_value | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
struct value * | result_value | ||
) |
Definition at line 2896 of file i386-tdep.c.
struct type* i386_pseudo_register_type | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) | [read] |
Definition at line 2852 of file i386-tdep.c.
void i386_pseudo_register_write | ( | struct gdbarch * | gdbarch, |
struct regcache * | regcache, | ||
int | regnum, | ||
const gdb_byte * | buf | ||
) |
Definition at line 2994 of file i386-tdep.c.
int i386_register_reggroup_p | ( | struct gdbarch * | gdbarch, |
int | regnum, | ||
struct reggroup * | group | ||
) |
Definition at line 3864 of file i386-tdep.c.
struct regset* i386_regset_from_core_section | ( | struct gdbarch * | gdbarch, |
const char * | sect_name, | ||
size_t | sect_size | ||
) | [read] |
Definition at line 3302 of file i386-tdep.c.
int i386_sigtramp_p | ( | struct frame_info * | this_frame | ) |
Definition at line 3373 of file i386-tdep.c.
CORE_ADDR i386_skip_main_prologue | ( | struct gdbarch * | gdbarch, |
CORE_ADDR | pc | ||
) |
Definition at line 1675 of file i386-tdep.c.
int i386_stap_is_single_operand | ( | struct gdbarch * | gdbarch, |
const char * | s | ||
) |
Definition at line 3445 of file i386-tdep.c.
int i386_stap_parse_special_token | ( | struct gdbarch * | gdbarch, |
struct stap_parse_info * | p | ||
) |
Definition at line 3457 of file i386-tdep.c.
void i386_supply_gregset | ( | const struct regset * | regset, |
struct regcache * | regcache, | ||
int | regnum, | ||
const void * | gregs, | ||
size_t | len | ||
) |
Definition at line 3195 of file i386-tdep.c.
void i386_svr4_init_abi | ( | struct gdbarch_info | info, |
struct gdbarch * | gdbarch | ||
) |
Definition at line 3791 of file i386-tdep.c.
int i386_word_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 154 of file i386-tdep.c.
int i386_xmm_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 208 of file i386-tdep.c.
int i386_ymm_regnum_p | ( | struct gdbarch * | gdbarch, |
int | regnum | ||
) |
Definition at line 193 of file i386-tdep.c.
struct type* i387_ext_type | ( | struct gdbarch * | gdbarch | ) | [read] |
Definition at line 2740 of file i386-tdep.c.
struct i386_insn i386_frame_setup_skip_insns[] |
Definition at line 1235 of file i386-tdep.c.
struct i386_insn i386_tramp_chain_in_reg_insns[] |
{ { 5, { 0xb8 }, { 0xfe } }, { 5, { 0xe9 }, { 0xff } }, {0} }
Definition at line 2070 of file i386-tdep.c.
struct i386_insn i386_tramp_chain_on_stack_insns[] |
{ { 5, { 0x68 }, { 0xff } }, { 5, { 0xe9 }, { 0xff } }, {0} }
Definition at line 2083 of file i386-tdep.c.