mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-27 03:51:15 +08:00
2004-11-15 Andrew Cagney <cagney@gnu.org>
* findvar.c (value_of_register): Set the frame ID. * value.c (value_primitive_field): Copy the frame ID. * valops.c (value_assign): Simplify lval_register case, there's always a frame.
This commit is contained in:
parent
4bd1d37b6f
commit
0c16dd26a8
@ -1,3 +1,10 @@
|
||||
2004-11-15 Andrew Cagney <cagney@gnu.org>
|
||||
|
||||
* findvar.c (value_of_register): Set the frame ID.
|
||||
* value.c (value_primitive_field): Copy the frame ID.
|
||||
* valops.c (value_assign): Simplify lval_register case, there's
|
||||
always a frame.
|
||||
|
||||
2004-11-14 Daniel Jacobowitz <dan@debian.org>
|
||||
|
||||
* Makefile.in (mips-linux-tdep.o): Update dependencies.
|
||||
|
@ -288,6 +288,7 @@ value_of_register (int regnum, struct frame_info *frame)
|
||||
VALUE_ADDRESS (reg_val) = addr;
|
||||
VALUE_REGNUM (reg_val) = regnum;
|
||||
VALUE_OPTIMIZED_OUT (reg_val) = optim;
|
||||
VALUE_FRAME_ID (reg_val) = get_frame_id (frame);
|
||||
return reg_val;
|
||||
}
|
||||
|
||||
|
12
gdb/valops.c
12
gdb/valops.c
@ -602,16 +602,8 @@ value_assign (struct value *toval, struct value *fromval)
|
||||
int value_reg;
|
||||
|
||||
/* Figure out which frame this is in currently. */
|
||||
if (VALUE_LVAL (toval) == lval_register)
|
||||
{
|
||||
frame = get_current_frame ();
|
||||
value_reg = VALUE_REGNUM (toval);
|
||||
}
|
||||
else
|
||||
{
|
||||
frame = frame_find_by_id (VALUE_FRAME_ID (toval));
|
||||
value_reg = VALUE_REGNUM (toval);
|
||||
}
|
||||
frame = frame_find_by_id (VALUE_FRAME_ID (toval));
|
||||
value_reg = VALUE_REGNUM (toval);
|
||||
|
||||
if (!frame)
|
||||
error ("Value being assigned to is no longer active.");
|
||||
|
@ -964,6 +964,7 @@ value_primitive_field (struct value *arg1, int offset,
|
||||
VALUE_LVAL (v) = lval_internalvar_component;
|
||||
VALUE_ADDRESS (v) = VALUE_ADDRESS (arg1);
|
||||
VALUE_REGNUM (v) = VALUE_REGNUM (arg1);
|
||||
VALUE_FRAME_ID (v) = VALUE_FRAME_ID (arg1);
|
||||
/* VALUE_OFFSET (v) = VALUE_OFFSET (arg1) + offset
|
||||
+ TYPE_FIELD_BITPOS (arg_type, fieldno) / 8; */
|
||||
return v;
|
||||
|
Loading…
Reference in New Issue
Block a user