25 #include <sys/types.h>
26 #include <sys/ptrace.h>
27 #include <sys/sysctl.h>
78 if (
ptrace (request, pid, (caddr_t) 1,
86 #include <machine/pcb.h>
103 if (pcb->pcb_esp == 0)
119 #ifdef PT_GETXSTATE_INFO
123 i386fbsd_read_description (
struct target_ops *ops)
125 static int xsave_probed;
126 static uint64_t xcr0;
130 struct ptrace_xstate_info info;
136 xcr0 = info.xsave_mask;
161 #ifdef HAVE_PT_GETDBREGS
174 #ifdef PT_GETXSTATE_INFO
184 #ifdef KERN_PROC_SIGTRAMP
194 struct kinfo_sigtramp kst;
199 mib[2] = KERN_PROC_SIGTRAMP;
202 if (sysctl (mib, 4, &kst, &len, NULL, 0) == 0)
struct target_ops * i386bsd_target(void)
const struct target_desc *(* to_read_description)(struct target_ops *ops) TARGET_DEFAULT_RETURN(NULL)
void fbsd_nat_add_target(struct target_ops *t)
void(* set_control)(unsigned long)
static int i386fbsd_supply_pcb(struct regcache *regcache, struct pcb *pcb)
struct x86_dr_low_type x86_dr_low
CORE_ADDR(* get_addr)(int)
CORE_ADDR i386fbsd_sigtramp_start_addr
struct regcache * get_current_regcache(void)
void(* set_addr)(int, CORE_ADDR)
static void i386fbsd_resume(struct target_ops *ops, ptid_t ptid, int step, enum gdb_signal signal)
unsigned long(* get_status)(void)
enum register_status regcache_cooked_read_unsigned(struct regcache *regcache, int regnum, ULONGEST *val)
void(* to_resume)(struct target_ops *, ptid_t, int TARGET_DEBUG_PRINTER(target_debug_print_step), enum gdb_signal) TARGET_DEFAULT_NORETURN(noprocess())
struct target_desc * tdesc_i386
CORE_ADDR i386fbsd_sigtramp_end_addr
int gdb_signal_to_host(enum gdb_signal)
CORE_ADDR i386bsd_dr_get_addr(int regnum)
unsigned long(* get_control)(void)
int ptid_get_pid(ptid_t ptid)
void i386bsd_dr_set_control(unsigned long control)
void i386bsd_dr_set_addr(int regnum, CORE_ADDR addr)
void void void void void void void void void perror_with_name(const char *string) ATTRIBUTE_NORETURN
unsigned long i386bsd_dr_get_status(void)
void regcache_cooked_write_unsigned(struct regcache *regcache, int regnum, ULONGEST val)
void regcache_raw_supply(struct regcache *regcache, int regnum, const void *buf)
unsigned long long ULONGEST
void x86_set_debug_register_length(int len)
void x86_use_watchpoints(struct target_ops *t)
void bsd_kvm_add_target(int(*supply_pcb)(struct regcache *, struct pcb *))
unsigned long i386bsd_dr_get_control(void)
mach_port_t mach_port_t name mach_port_t mach_port_t name error_t int int rusage_t pid_t pid
const struct target_desc * i386_target_description(uint64_t xcr0)
void _initialize_i386fbsd_nat(void)
const ULONGEST const LONGEST len