diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 958ae852b26..631fe209a32 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,17 @@ 2002-08-15 Mark Kettenis + * config/i386/tm-i386sco5.h: Include "i386/tm-i386v4.h" instead of + "i386/tm-i386.h", "i386/tm-i386v.h" and "config/tm-sysv.h". + Adjust a few comments to reflect reality a bit closer. + (KERNEL_U_SIZE, TARGET_HAS_HARDWARE_WATCHPOINTS, + TARGET_CAN_USE_HARDWARE_WATCHPOINT, HAVE_CONTINUEABLE_WATCHPOINT, + HAVE_STEPPABLE_WATCHPOINT, STOPPED_BY_WATCHPOINT, + target_insert_watchpoint, target_remove_watchpoint): + Move defines to ... + * config/i386/nm-i386sco5.h: ... here. + (kernel_u_size): Add prototype. Improve a few comments and add + protection against multiple inclusion. + * config/i386/nm-i386sco.h (FLOAT_INFO): Remove already commented out define. diff --git a/gdb/config/i386/nm-i386sco5.h b/gdb/config/i386/nm-i386sco5.h index db2880c01ba..f2fd400c197 100644 --- a/gdb/config/i386/nm-i386sco5.h +++ b/gdb/config/i386/nm-i386sco5.h @@ -1,5 +1,5 @@ -/* Native support for SCO OpenServer 5 - Copyright 1996, 1998 Free Software Foundation, Inc. +/* Native support for SCO OpenServer 5. + Copyright 1996, 1998, 2002 Free Software Foundation, Inc. Re-written by J. Kean Johnston . Originally written by Robert Lipe , based on work by Ian Lance Taylor and @@ -22,17 +22,49 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#ifndef NM_I386SCO5_H +#define NM_I386SCO5_H + /* Basically, its a lot like the older versions ... */ #include "i386/nm-i386sco.h" -/* ... but it can do a lot of SVR4 type stuff too. */ +/* ... but it can do a lot of SVR4 type stuff too. */ #define SVR4_SHARED_LIBS -#include "solib.h" /* Pick up shared library support */ +#include "solib.h" /* Pick up shared library support. */ -#define ATTACH_DETACH - -/* SCO does not provide . infptrace.c does not +/* SCO does not provide . However, infptrace.c does not have defaults for these values. */ #define PTRACE_ATTACH 10 #define PTRACE_DETACH 11 + +/* Return the size of the user struct. */ + +#define KERNEL_U_SIZE kernel_u_size () +extern int kernel_u_size (void); + +/* We can attach and detach. */ +#define ATTACH_DETACH + +/* Hardware-assisted breakpoints and watchpoints. */ + +/* We can also do hardware watchpoints. */ +#define TARGET_HAS_HARDWARE_WATCHPOINTS +#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) 1 + +/* After a watchpoint trap, the PC points to the instruction which + caused the trap. But we can continue over it without disabling the + trap. */ +#define HAVE_CONTINUABLE_WATCHPOINT +#define HAVE_STEPPABLE_WATCHPOINT + +#define STOPPED_BY_WATCHPOINT(W) \ + i386_stopped_by_watchpoint (PIDGET (inferior_ptid)) + +#define target_insert_watchpoint(addr, len, type) \ + i386_insert_watchpoint (PIDGET (inferior_ptid), addr, len, type) + +#define target_remove_watchpoint(addr, len, type) \ + i386_remove_watchpoint (PIDGET (inferior_ptid), addr, len) + +#endif /* nm-i386sco5.h */ diff --git a/gdb/config/i386/tm-i386sco5.h b/gdb/config/i386/tm-i386sco5.h index dc1bb26ffa8..e26a3bff52e 100644 --- a/gdb/config/i386/tm-i386sco5.h +++ b/gdb/config/i386/tm-i386sco5.h @@ -1,5 +1,5 @@ /* Macro definitions for GDB on an Intel i386 running SCO Open Server 5. - Copyright 1998 Free Software Foundation, Inc. + Copyright 1998, 2002 Free Software Foundation, Inc. Written by J. Kean Johnston (jkj@sco.com). This file is part of GDB. @@ -20,44 +20,17 @@ Boston, MA 02111-1307, USA. */ #ifndef TM_I386SCO5_H -#define TM_I386SCO5_H 1 +#define TM_I386SCO5_H -/* Pick up most of what we need from the generic i386 target include file. */ +/* Pick up most of what we need from the i386 SVR4 target include file. */ +#include "i386/tm-i386v4.h" -#include "i386/tm-i386.h" +/* SCO is unlike other SVR3 targets in that it has SVR4 style shared + libs, with a slight twist. We expect 3 traps (2 for the exec and + one for the dynamic loader). After the third trap we insert the + shared library breakpoints, then wait for the 4th trap. */ -/* Pick up more stuff from the generic SYSV and SVR4 host include files. */ -#include "i386/tm-i386v.h" -#include "config/tm-sysv4.h" - -#define KERNEL_U_SIZE kernel_u_size() - -/* - * SCO is unlike other SVR3 targets in that it has SVR4 style shared - * libs, with a slight twist. We expect 3 traps (2 for the exec and - * one for the dynamic loader). After the third trap we insert the - * SOLIB breakpoints, then wait for the 4th trap. - */ #undef START_INFERIOR_TRAPS_EXPECTED #define START_INFERIOR_TRAPS_EXPECTED 3 -/* We can also do hardware watchpoints */ -#define TARGET_HAS_HARDWARE_WATCHPOINTS -#define TARGET_CAN_USE_HARDWARE_WATCHPOINT(type, cnt, ot) 1 - -/* After a watchpoint trap, the PC points to the instruction which - caused the trap. But we can continue over it without disabling the - trap. */ -#define HAVE_CONTINUABLE_WATCHPOINT -#define HAVE_STEPPABLE_WATCHPOINT - -#define STOPPED_BY_WATCHPOINT(W) \ - i386_stopped_by_watchpoint (PIDGET (inferior_ptid)) - -#define target_insert_watchpoint(addr, len, type) \ - i386_insert_watchpoint (PIDGET (inferior_ptid), addr, len, type) - -#define target_remove_watchpoint(addr, len, type) \ - i386_remove_watchpoint (PIDGET (inferior_ptid), addr, len) - #endif /* ifndef TM_I386SCO5_H */