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 | |
parent | a144416fe3806b00141286cd011c90626ccefbea (diff) | |
download | gdb-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')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/i386fbsd-nat.c | 10 |
2 files changed, 12 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 3c7b6da..03ef43f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2003-08-10 Mark Kettenis <kettenis@gnu.org> + * 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. + * i386bsd-nat.c (fetch_inferior_registers, store_inferior_registers): Don't use && at the end of a line. (_initialize_i386bsd_nat): Fix typo. 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; } |