aboutsummaryrefslogtreecommitdiff
path: root/gdb/i386fbsd-nat.c
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2003-08-10 16:46:08 +0000
committerMark Kettenis <kettenis@gnu.org>2003-08-10 16:46:08 +0000
commitf0925262c7016794923c5eaec198c3fa097c8973 (patch)
treee649ba1cdc6656034e1385cd160e3ea5241b12f7 /gdb/i386fbsd-nat.c
parenta144416fe3806b00141286cd011c90626ccefbea (diff)
downloadgdb-f0925262c7016794923c5eaec198c3fa097c8973.zip
gdb-f0925262c7016794923c5eaec198c3fa097c8973.tar.gz
gdb-f0925262c7016794923c5eaec198c3fa097c8973.tar.bz2
* i386fbsd-nat.c: Include "i386-tdep.h".
(child_resume): Make `eflags' an ULONGEST. Use regcache_cooked_read_unsigned and regcache_cooked_write_unsigned instead of register_read and register_write.
Diffstat (limited to 'gdb/i386fbsd-nat.c')
-rw-r--r--gdb/i386fbsd-nat.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/gdb/i386fbsd-nat.c b/gdb/i386fbsd-nat.c
index a80d0a0..f5845e3 100644
--- a/gdb/i386fbsd-nat.c
+++ b/gdb/i386fbsd-nat.c
@@ -26,6 +26,8 @@
#include <sys/ptrace.h>
#include <sys/sysctl.h>
+#include "i386-tdep.h"
+
/* Prevent warning from -Wmissing-prototypes. */
void _initialize_i386fbsd_nat (void);
@@ -47,7 +49,7 @@ child_resume (ptid_t ptid, int step, enum target_signal signal)
if (!step)
{
- unsigned int eflags;
+ ULONGEST eflags;
/* Workaround for a bug in FreeBSD. Make sure that the trace
flag is off when doing a continue. There is a code path
@@ -59,9 +61,11 @@ child_resume (ptid_t ptid, int step, enum target_signal signal)
never goes through the kernel's trap() function which would
normally clear it. */
- eflags = read_register (PS_REGNUM);
+ regcache_cooked_read_unsigned (current_regcache, I386_EFLAGS_REGNUM,
+ &eflags);
if (eflags & 0x0100)
- write_register (PS_REGNUM, eflags & ~0x0100);
+ regcache_cooked_write_unsigned (current_regcache, I386_EFLAGS_REGNUM,
+ eflags & ~0x0100);
request = PT_CONTINUE;
}