diff options
author | Mark Kettenis <kettenis@gnu.org> | 2003-08-10 16:46:08 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2003-08-10 16:46:08 +0000 |
commit | f0925262c7016794923c5eaec198c3fa097c8973 (patch) | |
tree | e649ba1cdc6656034e1385cd160e3ea5241b12f7 /gdb/i386fbsd-nat.c | |
parent | a144416fe3806b00141286cd011c90626ccefbea (diff) | |
download | binutils-gdb-f0925262c7016794923c5eaec198c3fa097c8973.tar.gz |
* 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.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/gdb/i386fbsd-nat.c b/gdb/i386fbsd-nat.c index a80d0a0af89..f5845e309b3 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; } |