diff options
author | Mark Kettenis <kettenis@gnu.org> | 2002-08-15 22:24:01 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@gnu.org> | 2002-08-15 22:24:01 +0000 |
commit | e0ca2bb9026d2d90ad346c926c752af6d3088be8 (patch) | |
tree | da8b1fdcb455fe749a5ce2819394da3f1ec0aa58 /gdb | |
parent | 6b99ee2e01f3a0489c2fa5c800ff184d9e143f4d (diff) | |
download | gdb-e0ca2bb9026d2d90ad346c926c752af6d3088be8.zip gdb-e0ca2bb9026d2d90ad346c926c752af6d3088be8.tar.gz gdb-e0ca2bb9026d2d90ad346c926c752af6d3088be8.tar.bz2 |
* config/i386/nm-gnu.h: Removed.
* config/i386/nm-i386gnu.h: New file.
(THREAD_STATE_FLAVOR, THREAD_STATE_SIZE,
THREAD_STATE_SET_TRACED, THREAD_STATE_CLEAR_STATE, ATTACH_DETACH):
Moved here from ...
* config/i386/tm-i386gnu.h: ... here. Removed.
* config/i386/xm-i386gnu.h: Removed.
* config/i386/i386gnu.mh (XM_FILE): Set to xm-i386.h.
(NAT_FILE): Set to nm-i386gnu.h.
* config/i386/i386gnu.mt (TDEPFILES): Add i386gnu-tdep.o.
* i386-tdep.c: New file.
* Makefile.in (ALLDEPFILES): Add i386gnu-nat.c and i386gnu-tdep.c.
(i386gnu-tdep.o): Specify dependencies.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 16 | ||||
-rw-r--r-- | gdb/Makefile.in | 3 | ||||
-rw-r--r-- | gdb/config/i386/i386gnu.mh | 4 | ||||
-rw-r--r-- | gdb/config/i386/i386gnu.mt | 6 | ||||
-rw-r--r-- | gdb/config/i386/nm-i386gnu.h (renamed from gdb/config/i386/nm-gnu.h) | 19 | ||||
-rw-r--r-- | gdb/config/i386/tm-i386gnu.h | 55 | ||||
-rw-r--r-- | gdb/i386gnu-tdep.c (renamed from gdb/config/i386/xm-i386gnu.h) | 30 |
7 files changed, 65 insertions, 68 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 631fe20..7d2abc1 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,19 @@ +2002-08-16 Mark Kettenis <kettenis@gnu.org> + + * config/i386/nm-gnu.h: Removed. + * config/i386/nm-i386gnu.h: New file. + (THREAD_STATE_FLAVOR, THREAD_STATE_SIZE, + THREAD_STATE_SET_TRACED, THREAD_STATE_CLEAR_STATE, ATTACH_DETACH): + Moved here from ... + * config/i386/tm-i386gnu.h: ... here. Removed. + * config/i386/xm-i386gnu.h: Removed. + * config/i386/i386gnu.mh (XM_FILE): Set to xm-i386.h. + (NAT_FILE): Set to nm-i386gnu.h. + * config/i386/i386gnu.mt (TDEPFILES): Add i386gnu-tdep.o. + * i386-tdep.c: New file. + * Makefile.in (ALLDEPFILES): Add i386gnu-nat.c and i386gnu-tdep.c. + (i386gnu-tdep.o): Specify dependencies. + 2002-08-15 Mark Kettenis <kettenis@gnu.org> * config/i386/tm-i386sco5.h: Include "i386/tm-i386v4.h" instead of diff --git a/gdb/Makefile.in b/gdb/Makefile.in index f15aa26..6a221ee 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -1225,6 +1225,7 @@ ALLDEPFILES = a68v-nat.c \ i386bsd-nat.c i386bsd-tdep.c i386fbsd-nat.c \ i387-tdep.c \ i386-linux-tdep.c i386-nat.c \ + i386gnu-nat.c i386gnu-tdep.c \ i960-tdep.c \ ia64-linux-nat.c ia64-linux-tdep.c ia64-tdep.c \ infptrace.c inftarg.c irix4-nat.c irix5-nat.c \ @@ -1659,6 +1660,8 @@ hppab-nat.o: hppab-nat.c $(bfd_h) $(defs_h) $(inferior_h) $(target_h) \ hppah-nat.o: hppah-nat.c $(bfd_h) $(defs_h) $(inferior_h) $(target_h) \ $(regcache_h) +i386gnu-tdep.o: $(defs_h) $(i386_tdep_h) + i386gnu-nat.o: gnu-nat.h i386-tdep.o: i386-tdep.c $(defs_h) $(gdb_string_h) $(frame_h) \ diff --git a/gdb/config/i386/i386gnu.mh b/gdb/config/i386/i386gnu.mh index da444a5..c2eb7af 100644 --- a/gdb/config/i386/i386gnu.mh +++ b/gdb/config/i386/i386gnu.mh @@ -4,8 +4,8 @@ NATDEPFILES= i386gnu-nat.o gnu-nat.o corelow.o core-regset.o \ notify_S.o process_reply_S.o msg_reply_S.o \ msg_U.o exc_request_U.o exc_request_S.o -XM_FILE= xm-i386gnu.h -NAT_FILE= nm-gnu.h +XM_FILE= xm-i386.h +NAT_FILE= nm-i386gnu.h MH_CFLAGS = -D_GNU_SOURCE XM_CLIBS = -lshouldbeinlibc diff --git a/gdb/config/i386/i386gnu.mt b/gdb/config/i386/i386gnu.mt index e08e2a2..dc3edd2 100644 --- a/gdb/config/i386/i386gnu.mt +++ b/gdb/config/i386/i386gnu.mt @@ -1,3 +1,3 @@ -# Target: Intel 386/elf/GNU Hurd -TDEPFILES= i386-tdep.o i387-tdep.o -TM_FILE= tm-i386gnu.h +# Target: Intel 386 running the GNU Hurd +TDEPFILES= i386-tdep.o i387-tdep.o i386gnu-tdep.o +TM_FILE= tm-i386v4.h diff --git a/gdb/config/i386/nm-gnu.h b/gdb/config/i386/nm-i386gnu.h index e721ce6..4fef763 100644 --- a/gdb/config/i386/nm-gnu.h +++ b/gdb/config/i386/nm-i386gnu.h @@ -1,5 +1,5 @@ /* Native-dependent definitions for Intel 386 running the GNU Hurd - Copyright 1994, 1995, 1996 Free Software Foundation, Inc. + Copyright 1994, 1995, 1996, 2002 Free Software Foundation, Inc. This file is part of GDB. @@ -18,6 +18,21 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* Include the generic hurd definitions. */ +#ifndef NM_I386GNU_H +#define NM_I386GNU_H +/* Include common definitions for GNU systems. */ #include "config/nm-gnu.h" + +/* Thread flavors used in re-setting the T bit. */ +#define THREAD_STATE_FLAVOR i386_REGS_SEGS_STATE +#define THREAD_STATE_SIZE i386_THREAD_STATE_COUNT +#define THREAD_STATE_SET_TRACED(state) \ + ((struct i386_thread_state *) (state))->efl |= 0x100 +#define THREAD_STATE_CLEAR_TRACED(state) \ + ((((struct i386_thread_state *) (state))->efl &= ~0x100), 1) + +/* We can attach and detach. */ +#define ATTACH_DETACH 1 + +#endif /* nm-i386gnu.h */ diff --git a/gdb/config/i386/tm-i386gnu.h b/gdb/config/i386/tm-i386gnu.h deleted file mode 100644 index 638cb03..0000000 --- a/gdb/config/i386/tm-i386gnu.h +++ /dev/null @@ -1,55 +0,0 @@ -/* Macro definitions for i386 running the GNU Hurd. - Copyright 1992, 1999, 2000 Free Software Foundation, Inc. - - This file is part of GDB. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#ifndef TM_I386GNU_H -#define TM_I386GNU_H 1 - -/* Include common definitions for GNU systems. - FIXME: This does not belong here since this is supposed to contain - only native-dependent information. */ -#include "config/nm-gnu.h" - -/* Thread flavors used in re-setting the T bit. - FIXME: This is native-dependent. */ -#define THREAD_STATE_FLAVOR i386_REGS_SEGS_STATE -#define THREAD_STATE_SIZE i386_THREAD_STATE_COUNT -#define THREAD_STATE_SET_TRACED(state) \ - ((struct i386_thread_state *)state)->efl |= 0x100 -#define THREAD_STATE_CLEAR_TRACED(state) \ - ((((struct i386_thread_state *)state)->efl &= ~0x100), 1) - -/* We can attach and detach. - FIXME: This is probably native-dependent too. */ -#define ATTACH_DETACH 1 - -#include "i386/tm-i386.h" - -/* We use stabs-in-ELF with the DWARF register numbering scheme. */ - -#undef STAB_REG_TO_REGNUM -#define STAB_REG_TO_REGNUM(reg) i386_dwarf_reg_to_regnum ((reg)) - -/* Offset to saved PC in sigcontext. */ -#define SIGCONTEXT_PC_OFFSET 68 - -/* We need this file for the SOLIB_TRAMPOLINE stuff. */ -#include "config/tm-sysv4.h" - -#endif /* TM_I386GNU_H */ diff --git a/gdb/config/i386/xm-i386gnu.h b/gdb/i386gnu-tdep.c index 711aeeb..fa56428 100644 --- a/gdb/config/i386/xm-i386gnu.h +++ b/gdb/i386gnu-tdep.c @@ -1,6 +1,5 @@ -/* Definitions to make GDB run on the GNU Hurd on an Intel 386 - Copyright 1986, 1987, 1989, 1991, 1996, 2000 - Free Software Foundation, Inc. +/* Target-dependent code for the GNU Hurd. + Copyright 2002 Free Software Foundation, Inc. This file is part of GDB. @@ -19,7 +18,26 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#define HOST_LONG_DOUBLE_FORMAT &floatformat_i387_ext +#include "defs.h" -/* Do implement the attach and detach commands. */ -#define ATTACH_DETACH 1 +#include "i386-tdep.h" + +static void +i386gnu_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) +{ + struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + + /* GNU uses ELF. */ + i386_elf_init_abi (info, gdbarch); + + tdep->jb_pc_offset = 20; /* From <bits/setjmp.h>. */ +} + +/* Provide a prototype to silence -Wmissing-prototypes. */ +extern void _initialize_i386gnu_tdep (void); + +void +_initialize_i386gnu_tdep (void) +{ + gdbarch_register_osabi (bfd_arch_i386, GDB_OSABI_HURD, i386gnu_init_abi); +} |