* linux-nat.c (linux_register_u_offset): Remove.
(linux_target_install_ops): New function. (linux_target): Use it. (linux_trad_target): New function. * linux-nat.h (linux_trad_target): Declare. * alpha-linux-nat.c: Include "gdbcore.h". (alpha_linux_register_u_offset): New function. (_initialize_alpha_linux_nat): Use linux_trad_target. * mips-linux-nat.c: Include "gdbcore.h". (mips_linux_register_u_offset): New function. (_initialize_mips_linux_nat): Use linux_trad_target. * config/arm/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/arm/nm-linux.h: Delete file. * config/i386/nm-linux64.h (FETCH_INFERIOR_REGISTERS): Remove. * config/i386/nm-linux.h (FETCH_INFERIOR_REGISTERS): Remove. * config/ia64/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/ia64/nm-linux.h: Delete file. * config/m32r/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/m32r/nm-linux.h: Delete file. * config/m68k/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/m68k/nm-linux.h: Delete file. * config/pa/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/pa/nm-linux.h: Delete file. * config/powerpc/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/powerpc/ppc64-linux.mh (NAT_FILE): Likewise. * config/powerpc/nm-linux.h: Delete file. * config/s390/s390.mh (NAT_FILE): Set to config/nm-linux.h. * config/s390/nm-linux.h: Delete file. * config/sparc/linux.mh (NAT_FILE): Set to config/nm-linux.h. * config/sparc/linux64.mh (NAT_FILE): Likewise. * config/sparc/nm-linux.h: Delete file. * Makefile.in (alpha-linux-nat.o): Update dependencies. (mips-linux-nat.o): Likewise.
This commit is contained in:
parent
de732108dd
commit
910122bf0a
@ -1,3 +1,51 @@
|
||||
2007-04-25 Ulrich Weigand <uweigand@de.ibm.com>
|
||||
|
||||
* linux-nat.c (linux_register_u_offset): Remove.
|
||||
(linux_target_install_ops): New function.
|
||||
(linux_target): Use it.
|
||||
(linux_trad_target): New function.
|
||||
* linux-nat.h (linux_trad_target): Declare.
|
||||
|
||||
* alpha-linux-nat.c: Include "gdbcore.h".
|
||||
(alpha_linux_register_u_offset): New function.
|
||||
(_initialize_alpha_linux_nat): Use linux_trad_target.
|
||||
|
||||
* mips-linux-nat.c: Include "gdbcore.h".
|
||||
(mips_linux_register_u_offset): New function.
|
||||
(_initialize_mips_linux_nat): Use linux_trad_target.
|
||||
|
||||
* config/arm/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/arm/nm-linux.h: Delete file.
|
||||
|
||||
* config/i386/nm-linux64.h (FETCH_INFERIOR_REGISTERS): Remove.
|
||||
* config/i386/nm-linux.h (FETCH_INFERIOR_REGISTERS): Remove.
|
||||
|
||||
* config/ia64/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/ia64/nm-linux.h: Delete file.
|
||||
|
||||
* config/m32r/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/m32r/nm-linux.h: Delete file.
|
||||
|
||||
* config/m68k/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/m68k/nm-linux.h: Delete file.
|
||||
|
||||
* config/pa/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/pa/nm-linux.h: Delete file.
|
||||
|
||||
* config/powerpc/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/powerpc/ppc64-linux.mh (NAT_FILE): Likewise.
|
||||
* config/powerpc/nm-linux.h: Delete file.
|
||||
|
||||
* config/s390/s390.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/s390/nm-linux.h: Delete file.
|
||||
|
||||
* config/sparc/linux.mh (NAT_FILE): Set to config/nm-linux.h.
|
||||
* config/sparc/linux64.mh (NAT_FILE): Likewise.
|
||||
* config/sparc/nm-linux.h: Delete file.
|
||||
|
||||
* Makefile.in (alpha-linux-nat.o): Update dependencies.
|
||||
(mips-linux-nat.o): Likewise.
|
||||
|
||||
2007-04-25 Ulrich Weigand <uweigand@de.ibm.com>
|
||||
|
||||
* core-aout.c: Delete file.
|
||||
|
@ -1716,7 +1716,8 @@ alphabsd-tdep.o: alphabsd-tdep.c $(defs_h) $(alpha_tdep_h) \
|
||||
$(alphabsd_tdep_h)
|
||||
alphafbsd-tdep.o: alphafbsd-tdep.c $(defs_h) $(value_h) $(osabi_h) \
|
||||
$(alpha_tdep_h) $(solib_svr4_h)
|
||||
alpha-linux-nat.o: alpha-linux-nat.c $(defs_h) $(target_h) $(linux_nat_h)
|
||||
alpha-linux-nat.o: alpha-linux-nat.c $(defs_h) $(target_h) $(linux_nat_h) \
|
||||
$(gdbcore_h)
|
||||
alpha-linux-tdep.o: alpha-linux-tdep.c $(defs_h) $(frame_h) $(gdb_assert_h) \
|
||||
$(osabi_h) $(solib_svr4_h) $(symtab_h) $(alpha_tdep_h)
|
||||
alpha-mdebug-tdep.o: alpha-mdebug-tdep.c $(defs_h) $(frame_h) \
|
||||
@ -2340,7 +2341,7 @@ mips64obsd-tdep.o: mips64obsd-tdep.c $(defs_h) $(osabi_h) $(regcache_h) \
|
||||
mips-irix-tdep.o: mips-irix-tdep.c $(defs_h) $(osabi_h) $(elf_bfd_h)
|
||||
mips-linux-nat.o: mips-linux-nat.c $(defs_h) $(mips_tdep_h) $(target_h) \
|
||||
$(linux_nat_h) $(gdb_proc_service_h) $(mips_linux_tdep_h) \
|
||||
$(inferior_h)
|
||||
$(gdbcore_h) $(inferior_h)
|
||||
mips-linux-tdep.o: mips-linux-tdep.c $(defs_h) $(gdbcore_h) $(target_h) \
|
||||
$(solib_svr4_h) $(osabi_h) $(mips_tdep_h) $(gdb_string_h) \
|
||||
$(gdb_assert_h) $(frame_h) $(regcache_h) $(trad_frame_h) \
|
||||
|
@ -21,11 +21,21 @@
|
||||
#include "defs.h"
|
||||
#include "target.h"
|
||||
#include "linux-nat.h"
|
||||
#include "gdbcore.h"
|
||||
|
||||
static CORE_ADDR
|
||||
alpha_linux_register_u_offset (int regno)
|
||||
{
|
||||
/* FIXME drow/2005-09-04: The hardcoded use of register_addr should go
|
||||
away. This requires disentangling the various definitions of it
|
||||
(particularly alpha-nat.c's). */
|
||||
return register_addr (regno, 0);
|
||||
}
|
||||
|
||||
void _initialialize_alpha_linux_nat (void);
|
||||
|
||||
void
|
||||
_initialize_alpha_linux_nat (void)
|
||||
{
|
||||
linux_nat_add_target (linux_target ());
|
||||
linux_nat_add_target (linux_trad_target (alpha_linux_register_u_offset));
|
||||
}
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Host: ARM based machine running GNU/Linux
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o arm-linux-nat.o gcore.o \
|
||||
proc-service.o linux-thread-db.o linux-nat.o linux-fork.o
|
||||
|
||||
|
@ -1,29 +0,0 @@
|
||||
/* Definitions to make GDB run on an ARM based machine under GNU/Linux.
|
||||
Copyright 1999, 2000, 2001, 2007 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 NM_ARMLINUX_H
|
||||
#define NM_ARMLINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in infptrace.c. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* NM_ARMLINUX_H */
|
@ -48,9 +48,6 @@ extern unsigned long i386_linux_dr_get_status (void);
|
||||
i386_linux_dr_get_status ()
|
||||
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#ifdef HAVE_PTRACE_GETFPXREGS
|
||||
/* Include register set support for the SSE registers. */
|
||||
#define FILL_FPXREGSET
|
||||
|
@ -50,9 +50,5 @@ extern void amd64_linux_dr_reset_addr (int regnum);
|
||||
extern unsigned long amd64_linux_dr_get_status (void);
|
||||
#define I386_DR_LOW_GET_STATUS() \
|
||||
amd64_linux_dr_get_status ()
|
||||
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* nm-linux64.h */
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Host: Intel IA-64 running GNU/Linux
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o corelow.o gcore.o \
|
||||
core-regset.o ia64-linux-nat.o \
|
||||
proc-service.o linux-thread-db.o linux-nat.o linux-fork.o
|
||||
|
@ -1,29 +0,0 @@
|
||||
/* Native support for GNU/Linux, for GDB, the GNU debugger.
|
||||
|
||||
Copyright 1999, 2000, 2001, 2004, 2005, 2007 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 NM_LINUX_H
|
||||
#define NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* #ifndef NM_LINUX_H */
|
@ -1,6 +1,6 @@
|
||||
# Host: M32R based machine running GNU/Linux
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o corelow.o \
|
||||
m32r-linux-nat.o gcore.o proc-service.o linux-thread-db.o \
|
||||
linux-nat.o linux-fork.o
|
||||
|
@ -1,29 +0,0 @@
|
||||
/* Definitions to make GDB run on an M32R based machine under GNU/Linux.
|
||||
Copyright 2004, 2007 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 NM_M32R_LINUX_H
|
||||
#define NM_M32R_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in infptrace.c. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* NM_M32R_LINUX_H */
|
@ -1,6 +1,6 @@
|
||||
# Host: Motorola m68k running GNU/Linux.
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o \
|
||||
corelow.o m68klinux-nat.o gcore.o \
|
||||
proc-service.o linux-thread-db.o linux-nat.o linux-fork.o
|
||||
|
@ -1,29 +0,0 @@
|
||||
/* Native support for linux, for GDB, the GNU debugger.
|
||||
Copyright 1996, 1998, 2000, 2007 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 NM_LINUX_H
|
||||
#define NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* #ifndef NM_LINUX_H */
|
@ -1,6 +1,6 @@
|
||||
# Host: Hewlett-Packard PA-RISC machine, running Linux
|
||||
XDEPFILES=
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o corelow.o gcore.o \
|
||||
hppa-linux-nat.o proc-service.o linux-thread-db.o linux-nat.o \
|
||||
linux-fork.o
|
||||
|
@ -1,30 +0,0 @@
|
||||
/* Native support for GNU/Linux, for GDB, the GNU debugger.
|
||||
Copyright (C) 2004, 2007 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 PA_NM_LINUX_H
|
||||
#define PA_NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
XM_CLIBS=
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o \
|
||||
ppc-linux-nat.o proc-service.o linux-thread-db.o \
|
||||
gcore.o linux-nat.o linux-fork.o
|
||||
|
@ -1,28 +0,0 @@
|
||||
/* IBM PowerPC native-dependent macros for GDB, the GNU debugger.
|
||||
Copyright 1995, 2000, 2007 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., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
#ifndef NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
#define NM_LINUX_H
|
||||
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* #ifndef NM_LINUX_H */
|
@ -2,7 +2,7 @@
|
||||
|
||||
XM_CLIBS=
|
||||
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o \
|
||||
ppc-linux-nat.o proc-service.o linux-thread-db.o \
|
||||
gcore.o linux-nat.o linux-fork.o
|
||||
|
@ -1,36 +0,0 @@
|
||||
/* Native support for GNU/Linux on S390.
|
||||
|
||||
Copyright 2001, 2002, 2003, 2007 Free Software Foundation, Inc.
|
||||
|
||||
Ported by D.J. Barrow for IBM Deutschland Entwicklung GmbH, IBM
|
||||
Corporation. derived from i390-nmlinux.h
|
||||
|
||||
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 NM_LINUX_H
|
||||
#define NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
|
||||
/* ptrace access. */
|
||||
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
|
||||
#endif /* nm_linux.h */
|
@ -1,5 +1,5 @@
|
||||
# Host: S390, running Linux
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= inf-ptrace.o fork-child.o corelow.o s390-nat.o \
|
||||
gcore.o linux-thread-db.o proc-service.o linux-nat.o linux-fork.o
|
||||
LOADLIBES = -ldl -rdynamic
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Host: GNU/Linux SPARC
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= sparc-nat.o sparc-linux-nat.o \
|
||||
corelow.o core-regset.o fork-child.o inf-ptrace.o \
|
||||
proc-service.o linux-thread-db.o \
|
||||
|
@ -1,5 +1,5 @@
|
||||
# Host: GNU/Linux UltraSPARC
|
||||
NAT_FILE= nm-linux.h
|
||||
NAT_FILE= config/nm-linux.h
|
||||
NATDEPFILES= sparc-nat.o sparc64-nat.o sparc64-linux-nat.o \
|
||||
corelow.o core-regset.o \
|
||||
fork-child.o inf-ptrace.o \
|
||||
|
@ -1,31 +0,0 @@
|
||||
/* Native-dependent definitions for GNU/Linux SPARC.
|
||||
|
||||
Copyright 1989, 1992, 1996, 1998, 1999, 2000, 2002, 2003, 2007
|
||||
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 NM_LINUX_H
|
||||
#define NM_LINUX_H
|
||||
|
||||
#include "config/nm-linux.h"
|
||||
|
||||
/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'. */
|
||||
#define FETCH_INFERIOR_REGISTERS
|
||||
|
||||
#endif /* nm-linux.h */
|
@ -3164,35 +3164,12 @@ linux_xfer_partial (struct target_ops *ops, enum target_object object,
|
||||
offset, len);
|
||||
}
|
||||
|
||||
#ifndef FETCH_INFERIOR_REGISTERS
|
||||
|
||||
/* Return the address in the core dump or inferior of register
|
||||
REGNO. */
|
||||
|
||||
static CORE_ADDR
|
||||
linux_register_u_offset (int regno)
|
||||
{
|
||||
/* FIXME drow/2005-09-04: The hardcoded use of register_addr should go
|
||||
away. This requires disentangling the various definitions of it
|
||||
(particularly alpha-nat.c's). */
|
||||
return register_addr (regno, 0);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/* Create a prototype generic Linux target. The client can override
|
||||
it with local methods. */
|
||||
|
||||
struct target_ops *
|
||||
linux_target (void)
|
||||
static void
|
||||
linux_target_install_ops (struct target_ops *t)
|
||||
{
|
||||
struct target_ops *t;
|
||||
|
||||
#ifdef FETCH_INFERIOR_REGISTERS
|
||||
t = inf_ptrace_target ();
|
||||
#else
|
||||
t = inf_ptrace_trad_target (linux_register_u_offset);
|
||||
#endif
|
||||
t->to_insert_fork_catchpoint = child_insert_fork_catchpoint;
|
||||
t->to_insert_vfork_catchpoint = child_insert_vfork_catchpoint;
|
||||
t->to_insert_exec_catchpoint = child_insert_exec_catchpoint;
|
||||
@ -3205,6 +3182,26 @@ linux_target (void)
|
||||
|
||||
super_xfer_partial = t->to_xfer_partial;
|
||||
t->to_xfer_partial = linux_xfer_partial;
|
||||
}
|
||||
|
||||
struct target_ops *
|
||||
linux_target (void)
|
||||
{
|
||||
struct target_ops *t;
|
||||
|
||||
t = inf_ptrace_target ();
|
||||
linux_target_install_ops (t);
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
struct target_ops *
|
||||
linux_trad_target (CORE_ADDR (*register_u_offset)(int))
|
||||
{
|
||||
struct target_ops *t;
|
||||
|
||||
t = inf_ptrace_trad_target (register_u_offset);
|
||||
linux_target_install_ops (t);
|
||||
|
||||
return t;
|
||||
}
|
||||
|
@ -88,6 +88,11 @@ struct lwp_info *iterate_over_lwps (int (*callback) (struct lwp_info *,
|
||||
override it with local methods. */
|
||||
struct target_ops * linux_target (void);
|
||||
|
||||
/* Create a generic GNU/Linux target using traditional
|
||||
ptrace register access. */
|
||||
struct target_ops *
|
||||
linux_trad_target (CORE_ADDR (*register_u_offset)(int));
|
||||
|
||||
/* Register the customized GNU/Linux target. This should be used
|
||||
instead of calling add_target directly. */
|
||||
void linux_nat_add_target (struct target_ops *);
|
||||
|
@ -26,6 +26,7 @@
|
||||
#include "target.h"
|
||||
#include "linux-nat.h"
|
||||
#include "mips-linux-tdep.h"
|
||||
#include "gdbcore.h"
|
||||
|
||||
#include "gdb_proc_service.h"
|
||||
|
||||
@ -246,12 +247,24 @@ mips64_linux_store_registers (int regnum)
|
||||
super_store_registers (regnum);
|
||||
}
|
||||
|
||||
/* Return the address in the core dump or inferior of register
|
||||
REGNO. */
|
||||
|
||||
static CORE_ADDR
|
||||
mips_linux_register_u_offset (int regno)
|
||||
{
|
||||
/* FIXME drow/2005-09-04: The hardcoded use of register_addr should go
|
||||
away. This requires disentangling the various definitions of it
|
||||
(particularly alpha-nat.c's). */
|
||||
return register_addr (regno, 0);
|
||||
}
|
||||
|
||||
void _initialize_mips_linux_nat (void);
|
||||
|
||||
void
|
||||
_initialize_mips_linux_nat (void)
|
||||
{
|
||||
struct target_ops *t = linux_target ();
|
||||
struct target_ops *t = linux_trad_target (mips_linux_register_u_offset);
|
||||
|
||||
super_fetch_registers = t->to_fetch_registers;
|
||||
super_store_registers = t->to_store_registers;
|
||||
|
Loading…
Reference in New Issue
Block a user