From 7e89e3575daf98bac9dece8abfab33dc42664626 Mon Sep 17 00:00:00 2001 From: Jason Thorpe Date: Sat, 5 Jan 2002 18:36:32 +0000 Subject: * acconfig.h (HAVE_PT_GETXMMREGS): New. * config.in: Regenerate. * configure.in: Update copyright years. Add test for PT_GETXMMREGS supplied by . * configure: Regenerate. * i386bsd-nat.c: Update copyright years. (fill_gregset): Use regcache_collect. (fetch_inferior_registers): Only fetch integer registers if requested to do so. Add support for XMM registers using PT_GETXMMREGS. (store_inferior_registers): Only store integer registers if requested to do so. Add support for XMM registers using PT_SETXMMREGS. * i386nbsd-nat.c (fetch_inferior_registers): Remove. (store_inferior_registers): Remove. (fetch_core_registers): Use supply_gregset and i387_supply_fsave. (fetch_elfcore_registers): New function. (i386nbsd_elfcore_fns): New. (_initialize_i386nbsd_nat): Register i386nbsd_elfcore_fns. * config/i386/nbsd.mh (NATDEPFILES): Add i387-nat.o and i386bsd-nat.o. * config/i386/nbsdelf.mh (NATDEPFILES): Likewise. * config/i386/nbsd.mt (TDEPFILES): Add i386bsd-nat.o. * config/i386/nbsdelf.mt (TDEPFILES): Likewise. * config/i386/tm-nbsd.h: Update copyright years. (HAVE_SSE_REGS): Define. (IN_SIGTRAMP): Define as i386bsd_in_sigtramp. (SIGTRAMP_START): Redefine as i386bsd_sigtramp_start. (SIGTRAMP_END): Redefine as i386bsd_sigtramp_end. (SIGCONTEXT_PC_OFFSET): Remove. (FRAME_SAVED_PC): Define as i386bsd_frame_saved_pc. --- gdb/config/i386/nbsd.mh | 2 +- gdb/config/i386/nbsd.mt | 2 +- gdb/config/i386/nbsdelf.mh | 2 +- gdb/config/i386/nbsdelf.mt | 2 +- gdb/config/i386/tm-nbsd.h | 26 +++++++++++++++++++------- 5 files changed, 23 insertions(+), 11 deletions(-) (limited to 'gdb/config') diff --git a/gdb/config/i386/nbsd.mh b/gdb/config/i386/nbsd.mh index b5d4c95..27fa189 100644 --- a/gdb/config/i386/nbsd.mh +++ b/gdb/config/i386/nbsd.mh @@ -7,7 +7,7 @@ XDEPFILES= # continuation character (backslash) to extend a commented line. As a # consequence, BSD make considers subsequent tab-indented lines to be # "unassociated shell commands". -NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o i386nbsd-nat.o solib.o solib-sunos.o +NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o i387-nat.o i386bsd-nat.o i386nbsd-nat.o solib.o solib-sunos.o XM_FILE= xm-nbsd.h NAT_FILE= nm-nbsd.h diff --git a/gdb/config/i386/nbsd.mt b/gdb/config/i386/nbsd.mt index aede1c3..4f8ad94 100644 --- a/gdb/config/i386/nbsd.mt +++ b/gdb/config/i386/nbsd.mt @@ -1,5 +1,5 @@ # Target: Intel 386 running NetBSD -TDEPFILES= i386-tdep.o i387-tdep.o i386nbsd-tdep.o +TDEPFILES= i386-tdep.o i387-tdep.o i386bsd-tdep.o i386nbsd-tdep.o TM_FILE= tm-nbsd.h GDBSERVER_DEPFILES= low-nbsd.o diff --git a/gdb/config/i386/nbsdelf.mh b/gdb/config/i386/nbsdelf.mh index 1a49ce0..efa13ae 100644 --- a/gdb/config/i386/nbsdelf.mh +++ b/gdb/config/i386/nbsdelf.mh @@ -1,5 +1,5 @@ # Host: Intel 386 running NetBSD XDEPFILES= -NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o i386nbsd-nat.o solib.o solib-svr4.o solib-legacy.o +NATDEPFILES= fork-child.o infptrace.o inftarg.o corelow.o i387-nat.o i386bsd-nat.o i386nbsd-nat.o solib.o solib-svr4.o solib-legacy.o XM_FILE= xm-nbsd.h NAT_FILE= nm-nbsdelf.h diff --git a/gdb/config/i386/nbsdelf.mt b/gdb/config/i386/nbsdelf.mt index 2782173..9aac135 100644 --- a/gdb/config/i386/nbsdelf.mt +++ b/gdb/config/i386/nbsdelf.mt @@ -1,5 +1,5 @@ # Target: Intel 386 running NetBSD -TDEPFILES= i386-tdep.o i387-tdep.o +TDEPFILES= i386-tdep.o i387-tdep.o i386bsd-tdep.o TM_FILE= tm-nbsdelf.h GDBSERVER_DEPFILES= low-nbsd.o diff --git a/gdb/config/i386/tm-nbsd.h b/gdb/config/i386/tm-nbsd.h index d392345c..ff67a5e 100644 --- a/gdb/config/i386/tm-nbsd.h +++ b/gdb/config/i386/tm-nbsd.h @@ -1,5 +1,5 @@ /* Macro definitions for i386 running under NetBSD. - Copyright 1994, 1996, 2000 Free Software Foundation, Inc. + Copyright 1994, 1996, 2000, 2002 Free Software Foundation, Inc. This file is part of GDB. @@ -22,6 +22,7 @@ #define TM_NBSD_H #define HAVE_I387_REGS +#define HAVE_SSE_REGS #include "i386/tm-i386.h" #include "config/tm-nbsd.h" @@ -46,13 +47,24 @@ extern int get_longjmp_target (CORE_ADDR *); /* Support for signal handlers. */ -/* The sigtramp is above the user stack and immediately below the - user area. Using constants here allows for cross debugging. */ +#define IN_SIGTRAMP(pc, name) i386bsd_in_sigtramp (pc, name) +extern int i386bsd_in_sigtramp (CORE_ADDR pc, char *name); -#define SIGTRAMP_START(pc) 0xbfbfdf20 -#define SIGTRAMP_END(pc) 0xbfbfdff0 +/* These defines allow the recognition of sigtramps as a function name + . -/* Offset to saved PC in sigcontext, from . */ -#define SIGCONTEXT_PC_OFFSET 20 + FIXME: kettenis/2001-07-13: These should be added to the target + vector and turned into functions when we go "multi-arch". */ + +#define SIGTRAMP_START(pc) i386bsd_sigtramp_start +#define SIGTRAMP_END(pc) i386bsd_sigtramp_end +extern CORE_ADDR i386bsd_sigtramp_start; +extern CORE_ADDR i386bsd_sigtramp_end; + +/* Override FRAME_SAVED_PC to enable the recognition of signal handlers. */ + +#undef FRAME_SAVED_PC +#define FRAME_SAVED_PC(frame) i386bsd_frame_saved_pc (frame) +extern CORE_ADDR i386bsd_frame_saved_pc (struct frame_info *frame); #endif /* TM_NBSD_H */ -- cgit v1.1