31 #define FT_CR_EFLAGS 1
57 #define X86_64_NUM_FT_COLLECT_GREGS \
58 (sizeof (x86_64_ft_collect_regmap) / sizeof(x86_64_ft_collect_regmap[0]))
62 const unsigned char *buf)
68 ((
char *) buf) + x86_64_ft_collect_regmap[i]);
77 return *(
ULONGEST *) (raw_regs + x86_64_ft_collect_regmap[regnum]);
82 #include <ust/processor.h>
89 #define ST_REGENTRY(REG) \
91 offsetof (struct registers, REG), \
92 sizeof (((struct registers *) NULL)->REG) \
99 } x86_64_st_collect_regmap[] =
123 #define X86_64_NUM_ST_COLLECT_GREGS \
124 (sizeof (x86_64_st_collect_regmap) / sizeof (x86_64_st_collect_regmap[0]))
127 #define AMD64_RIP_REGNUM 16
130 supply_static_tracepoint_registers (
struct regcache *regcache,
131 const unsigned char *buf,
135 unsigned long newpc = pc;
139 for (i = 0; i < X86_64_NUM_ST_COLLECT_GREGS; i++)
140 if (x86_64_st_collect_regmap[i].
offset != -1)
142 switch (x86_64_st_collect_regmap[i].size)
147 + x86_64_st_collect_regmap[i].
offset);
152 = * (
short *) (((
char *) buf)
153 + x86_64_st_collect_regmap[i].offset);
160 "unhandled register size: %d",
161 x86_64_st_collect_regmap[i].size);
#define IP_AGENT_EXPORT_FUNC
void internal_error(const char *file, int line, const char *fmt,...)
IP_AGENT_EXPORT_FUNC ULONGEST gdb_agent_get_raw_reg(const unsigned char *raw_regs, int regnum)
#define X86_64_NUM_FT_COLLECT_GREGS
void init_registers_amd64_linux(void)
const struct target_desc * tdesc_amd64_linux
static const int x86_64_ft_collect_regmap[]
void initialize_low_tracepoint(void)
unsigned long long ULONGEST
void supply_register(struct regcache *regcache, int n, const void *buf)
void supply_fast_tracepoint_registers(struct regcache *regcache, const unsigned char *buf)