diff options
author | Michael Snyder <msnyder@vmware.com> | 2000-05-26 23:22:41 +0000 |
---|---|---|
committer | Michael Snyder <msnyder@vmware.com> | 2000-05-26 23:22:41 +0000 |
commit | c60c0f5f8841d467149bdf0980bd17fb1246ca51 (patch) | |
tree | 1ea824d589d4ac0b2e5f62c5f9963a9867d9e803 /gdb/gregset.h | |
parent | a799cbe2740f55a797085b0c67b69eaae6745940 (diff) | |
download | binutils-gdb-c60c0f5f8841d467149bdf0980bd17fb1246ca51.tar.gz |
2000-05-26 Michael Snyder <msnyder@seadog.cygnus.com>
* gregset.h: New file. Typedefs for gdb_gregset_t and
gdb_fpregset_t, prototypes for supply_gregset and friends.
* procfs.c: Include gregset.h. Delete local prototypes for
supply_gregset etc., and local typedef gdb_gregset_t etc.
* sol-thread.c: Include gregset.h, delete local prototypes,
add appropriate casts to gdb_gregset_t.
* uw-thread.c, lin-thread.c, core-sol2.c, core-regset.c,
sparc-tdep.c, ptx4-nat.c, ppc-linux-nat.c, mipsv4-nat.c,
m88k-nat.c, m68klinux-nat.c, m68k-tdep.c, irix5-nat.c,
irix4-nat.c, ia64-linux-nat.c, i386v4-nat.c, cxux-nat.c,
arm-linux-nat.c, alpha-nat.c: Include gregset.h.
* config/nm-linux.h: Define GDB_GREGSET_T, GDB_FPREGET_T.
* config/sparc/tm-sun4sol2.h: Ditto.
Diffstat (limited to 'gdb/gregset.h')
-rw-r--r-- | gdb/gregset.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/gdb/gregset.h b/gdb/gregset.h new file mode 100644 index 00000000000..3a85397455a --- /dev/null +++ b/gdb/gregset.h @@ -0,0 +1,50 @@ +/* Interface for functions using gregset and fpregset types. + Copyright (C) 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 GDB_GREGSET_T +#define GDB_GREGSET_T gregset_t +#endif + +#ifndef GDB_FPREGSET_T +#define GDB_FPREGSET_T fpregset_t +#endif + +typedef GDB_GREGSET_T gdb_gregset_t; +typedef GDB_FPREGSET_T gdb_fpregset_t; + +/* A gregset is a data structure supplied by the native OS containing + the general register values of the debugged process. Usually this + includes integer registers and control registers. An fpregset is a + data structure containing the floating point registers. These data + structures were originally a part of the /proc interface, but have + been borrowed or copied by other GDB targets, eg. Linux. */ + +/* Copy register values from the native target gregset / fpregset + into GDB's internal register cache. */ + +extern void supply_gregset (gdb_gregset_t *gregs); +extern void supply_fpregset (gdb_fpregset_t *fpregs); + +/* Copy register values from GDB's register cache into + the native target gregset / fpregset. If regno is -1, + copy all the registers. */ + +extern void fill_gregset (gdb_gregset_t *gregs, int regno); +extern void fill_fpregset (gdb_fpregset_t *fpregs, int regno); |