diff options
author | Andrew Cagney <cagney@redhat.com> | 2001-03-21 16:42:39 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2001-03-21 16:42:39 +0000 |
commit | 64485362e8de1cf93e55c3498e2af97cbf520f4b (patch) | |
tree | 3c34c2e96a51e2761b25aeccddd0b7c374c6f32e /gdb/stabsread.c | |
parent | 9742079a314711c13d269e9e583b7b82dc42f1a6 (diff) | |
download | gdb-64485362e8de1cf93e55c3498e2af97cbf520f4b.zip gdb-64485362e8de1cf93e55c3498e2af97cbf520f4b.tar.gz gdb-64485362e8de1cf93e55c3498e2af97cbf520f4b.tar.bz2 |
* frame.h (SIZEOF_FRAME_SAVED_REGS): Report an error if macro
already defined.
From 2000-08-25 Stephane Carrez <Stephane.Carrez@worldnet.fr>:
* stabsread.c (define_symbol): A parameter ('R'), a local ('r'),
or a reference ('a') can be in a pseudo register.
* infcmd.c (do_registers_info): Must take into account the pseudo
registers to print their value.
(registers_info): Likewise.
* stack.c (frame_info): Likewise.
* frame.h (SIZEOF_FRAME_SAVED_REGS): Save the pseudo registers.
Diffstat (limited to 'gdb/stabsread.c')
-rw-r--r-- | gdb/stabsread.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gdb/stabsread.c b/gdb/stabsread.c index ad6719f..bba3d09 100644 --- a/gdb/stabsread.c +++ b/gdb/stabsread.c @@ -1802,9 +1802,10 @@ define_symbol (CORE_ADDR valu, char *string, int desc, int type, SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_CLASS (sym) = LOC_REGPARM; SYMBOL_VALUE (sym) = STAB_REG_TO_REGNUM (valu); - if (SYMBOL_VALUE (sym) >= NUM_REGS) + if (SYMBOL_VALUE (sym) >= NUM_REGS + NUM_PSEUDO_REGS) { - complain (®_value_complaint, SYMBOL_VALUE (sym), NUM_REGS, + complain (®_value_complaint, SYMBOL_VALUE (sym), + NUM_REGS + NUM_PSEUDO_REGS, SYMBOL_SOURCE_NAME (sym)); SYMBOL_VALUE (sym) = SP_REGNUM; /* Known safe, though useless */ } @@ -1817,9 +1818,10 @@ define_symbol (CORE_ADDR valu, char *string, int desc, int type, SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_CLASS (sym) = LOC_REGISTER; SYMBOL_VALUE (sym) = STAB_REG_TO_REGNUM (valu); - if (SYMBOL_VALUE (sym) >= NUM_REGS) + if (SYMBOL_VALUE (sym) >= NUM_REGS + NUM_PSEUDO_REGS) { - complain (®_value_complaint, SYMBOL_VALUE (sym), NUM_REGS, + complain (®_value_complaint, SYMBOL_VALUE (sym), + NUM_REGS + NUM_PSEUDO_REGS, SYMBOL_SOURCE_NAME (sym)); SYMBOL_VALUE (sym) = SP_REGNUM; /* Known safe, though useless */ } @@ -2066,9 +2068,10 @@ define_symbol (CORE_ADDR valu, char *string, int desc, int type, SYMBOL_TYPE (sym) = read_type (&p, objfile); SYMBOL_CLASS (sym) = LOC_REGPARM_ADDR; SYMBOL_VALUE (sym) = STAB_REG_TO_REGNUM (valu); - if (SYMBOL_VALUE (sym) >= NUM_REGS) + if (SYMBOL_VALUE (sym) >= NUM_REGS + NUM_PSEUDO_REGS) { - complain (®_value_complaint, SYMBOL_VALUE (sym), NUM_REGS, + complain (®_value_complaint, SYMBOL_VALUE (sym), + NUM_REGS + NUM_PSEUDO_REGS, SYMBOL_SOURCE_NAME (sym)); SYMBOL_VALUE (sym) = SP_REGNUM; /* Known safe, though useless */ } |