+2014-06-19 Gary Benson <gbenson@redhat.com>
+
+ * i386-nat.c (i386_stopped_by_watchpoint):
+ Use i386_dr_stopped_by_watchpoint.
+ (i386_insert_hw_breakpoint): Use i386_dr_insert_watchpoint.
+ (i386_remove_hw_breakpoint): Use i386_dr_remove_watchpoint.
+
2014-06-19 Gary Benson <gbenson@redhat.com>
* nat/i386-dregs.c: New file.
static int
i386_stopped_by_watchpoint (struct target_ops *ops)
{
- CORE_ADDR addr = 0;
- return i386_stopped_data_address (ops, &addr);
+ struct i386_debug_reg_state *state
+ = i386_debug_reg_state (ptid_get_pid (inferior_ptid));
+
+ return i386_dr_stopped_by_watchpoint (state);
}
/* Insert a hardware-assisted breakpoint at BP_TGT->placed_address.
i386_insert_hw_breakpoint (struct target_ops *self, struct gdbarch *gdbarch,
struct bp_target_info *bp_tgt)
{
- return i386_insert_watchpoint (self, bp_tgt->placed_address, 1,
- hw_execute, NULL) ? EBUSY : 0;
+ struct i386_debug_reg_state *state
+ = i386_debug_reg_state (ptid_get_pid (inferior_ptid));
+
+ return i386_dr_insert_watchpoint (state, hw_execute,
+ bp_tgt->placed_address, 1) ? EBUSY : 0;
}
/* Remove a hardware-assisted breakpoint at BP_TGT->placed_address.
i386_remove_hw_breakpoint (struct target_ops *self, struct gdbarch *gdbarch,
struct bp_target_info *bp_tgt)
{
- return i386_remove_watchpoint (self, bp_tgt->placed_address, 1,
- hw_execute, NULL);
+ struct i386_debug_reg_state *state
+ = i386_debug_reg_state (ptid_get_pid (inferior_ptid));
+
+ return i386_dr_remove_watchpoint (state, hw_execute,
+ bp_tgt->placed_address, 1);
}
/* Returns the number of hardware watchpoints of type TYPE that we can