diff options
author | Fred Fish <fnf@specifix.com> | 1996-01-04 07:23:24 +0000 |
---|---|---|
committer | Fred Fish <fnf@specifix.com> | 1996-01-04 07:23:24 +0000 |
commit | e33aefba5a547a6f61c436b47ff3a73ee275e886 (patch) | |
tree | 23b93961384a8856690ae0369e89d56bd1bb7fe5 /gdb/i386v4-nat.c | |
parent | 1aa265574776be3097eb7d8f66d73649858897b2 (diff) | |
download | gdb-e33aefba5a547a6f61c436b47ff3a73ee275e886.zip gdb-e33aefba5a547a6f61c436b47ff3a73ee275e886.tar.gz gdb-e33aefba5a547a6f61c436b47ff3a73ee275e886.tar.bz2 |
* i386v4-nat.c (supply_gregset, fill_gregset): Subtract NUM_FREGS
from NUM_REGS to get number of general registers that we care about.
Update copyright to 1996.
* config/i386/tm-i386.h (REGISTER_BYTES): Define in terms
of number of general regs and number of floating point regs.
Update copyright to 1996.
Diffstat (limited to 'gdb/i386v4-nat.c')
-rw-r--r-- | gdb/i386v4-nat.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gdb/i386v4-nat.c b/gdb/i386v4-nat.c index 2de8407..1f1d38b 100644 --- a/gdb/i386v4-nat.c +++ b/gdb/i386v4-nat.c @@ -1,5 +1,5 @@ /* Native-dependent code for SVR4 Unix running on i386's, for GDB. - Copyright 1988, 1989, 1991, 1992 Free Software Foundation, Inc. + Copyright 1988, 1989, 1991, 1992, 1996 Free Software Foundation, Inc. This file is part of GDB. @@ -75,6 +75,12 @@ static int regmap[] = }; +/* FIXME: These routine absolutely depends upon (NUM_REGS - NUM_FREGS) + being less than or equal to the number of registers that can be stored + in a gregset_t. Note that with the current scheme there will typically + be more registers actually stored in a gregset_t that what we know + about. This is bogus and should be fixed. */ + /* Given a pointer to a general register set in /proc format (gregset_t *), unpack the register contents and supply them as gdb's idea of the current register values. */ @@ -87,7 +93,7 @@ supply_gregset (gregsetp) register greg_t *regp = (greg_t *) gregsetp; extern int regmap[]; - for (regi = 0 ; regi < NUM_REGS ; regi++) + for (regi = 0 ; regi < (NUM_REGS - NUM_FREGS) ; regi++) { supply_register (regi, (char *) (regp + regmap[regi])); } @@ -103,7 +109,7 @@ fill_gregset (gregsetp, regno) extern char registers[]; extern int regmap[]; - for (regi = 0 ; regi < NUM_REGS ; regi++) + for (regi = 0 ; regi < (NUM_REGS - NUM_FREGS) ; regi++) { if ((regno == -1) || (regno == regi)) { |