* 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.
This commit is contained in:
Mark Kettenis 2002-08-15 22:24:01 +00:00
parent 6b99ee2e01
commit e0ca2bb902
7 changed files with 65 additions and 68 deletions

View File

@ -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

View File

@ -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) \

View File

@ -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

View File

@ -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

View File

@ -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 */

View File

@ -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 */

View File

@ -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);
}