aboutsummaryrefslogtreecommitdiff
path: root/gdb/value.h
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2008-04-30 21:13:49 +0000
committerDaniel Jacobowitz <drow@false.org>2008-04-30 21:13:49 +0000
commit9214ee5f5f55de5082571ea066ea6060497fa229 (patch)
tree6b661593eb61332347bf60ccafeb3be5d2ac5067 /gdb/value.h
parent8d4e307105edd5f21154824fd5839896ae6e6d84 (diff)
downloadgdb-9214ee5f5f55de5082571ea066ea6060497fa229.zip
gdb-9214ee5f5f55de5082571ea066ea6060497fa229.tar.gz
gdb-9214ee5f5f55de5082571ea066ea6060497fa229.tar.bz2
* ada-lang.c (ada_value_primitive_packed_val): Only check
value_lazy for memory lvals. * findvar.c (value_of_register_lazy): New function. (locate_var_value): Only check value_lazy for memory lvals. * valarith.c (value_subscripted_rvalue): Likewise. * valops.c (value_fetch_lazy): Handle both memory and register lvals. (search_struct_field, value_slice): Only check value_lazy for memory lvals. * value.c (struct value): Update comment for lazy. (value_primitive_field): Only check value_lazy for memory lvals. * value.h (value_lazy): Update comment. (value_of_register_lazy): Declare.
Diffstat (limited to 'gdb/value.h')
-rw-r--r--gdb/value.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/gdb/value.h b/gdb/value.h
index 731b6be..f75f7dd 100644
--- a/gdb/value.h
+++ b/gdb/value.h
@@ -135,9 +135,9 @@ extern int value_embedded_offset (struct value *value);
extern void set_value_embedded_offset (struct value *value, int val);
/* If zero, contents of this value are in the contents field. If
- nonzero, contents are in inferior memory at address in the
- location.address field plus the offset field (and the lval field
- should be lval_memory).
+ nonzero, contents are in inferior. If the lval field is lval_memory,
+ the contents are in inferior memory at location.address plus offset.
+ The lval field may also be lval_register.
WARNING: This field is used by the code which handles watchpoints
(see breakpoint.c) to decide whether a particular value can be
@@ -301,6 +301,8 @@ extern struct value *value_of_variable (struct symbol *var, struct block *b);
extern struct value *value_of_register (int regnum, struct frame_info *frame);
+struct value *value_of_register_lazy (struct frame_info *frame, int regnum);
+
extern int symbol_read_needs_frame (struct symbol *);
extern struct value *read_var_value (struct symbol *var,