* i386-nat.c (i386_insert_aligned_watchpoint): Set address

register before enabling it by setting the control register.
(i386_remove_aligned_watchpoint): Reset address register after
disabling it by setting the control register.
This commit is contained in:
Mark Kettenis 2001-03-31 17:40:04 +00:00
parent 1e8d0a7b55
commit 4bcc394469
2 changed files with 7 additions and 2 deletions

View File

@ -1,5 +1,10 @@
2001-03-31 Mark Kettenis <kettenis@gnu.org>
* i386-nat.c (i386_insert_aligned_watchpoint): Set address
register before enabling it by setting the control register.
(i386_remove_aligned_watchpoint): Reset address register after
disabling it by setting the control register.
* i386-tdep.c (i386_extract_return_value): If the type of the
return value is TYPE_STRUCT and the number of fields is one, call
ourselves with TYPE set tp the type of the first field.

View File

@ -356,8 +356,8 @@ i386_insert_aligned_watchpoint (CORE_ADDR addr, unsigned len_rw_bits)
dr_control_mirror &= I386_DR_CONTROL_MASK;
/* Finally, actually pass the info to the inferior. */
I386_DR_LOW_SET_CONTROL (dr_control_mirror);
I386_DR_LOW_SET_ADDR (i, addr);
I386_DR_LOW_SET_CONTROL (dr_control_mirror);
return 0;
}
@ -384,8 +384,8 @@ i386_remove_aligned_watchpoint (CORE_ADDR addr, unsigned len_rw_bits)
dr_mirror[i] = 0;
I386_DR_DISABLE (i);
/* Reset it in the inferior. */
I386_DR_LOW_RESET_ADDR (i);
I386_DR_LOW_SET_CONTROL (dr_control_mirror);
I386_DR_LOW_RESET_ADDR (i);
}
retval = 0;
}