aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1993-10-26 15:49:39 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1993-10-26 15:49:39 +0000
commit79971d11cc7a1331d433f7cc9eb0495d07a53078 (patch)
tree62a479609bf8e112a8c9e68cdf5f77695a8b15ae /gdb
parent9e16fcf1246cc8d4615568e7724c2d39e753a143 (diff)
downloadgdb-79971d11cc7a1331d433f7cc9eb0495d07a53078.zip
gdb-79971d11cc7a1331d433f7cc9eb0495d07a53078.tar.gz
gdb-79971d11cc7a1331d433f7cc9eb0495d07a53078.tar.bz2
* valops.c (value_assign): Call reinit_frame_cache when assigning
to a register.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/valops.c9
2 files changed, 14 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1bf5dcb..a2a4b36 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+Tue Oct 26 10:41:29 1993 Jim Kingdon (kingdon@lioth.cygnus.com)
+
+ * valops.c (value_assign): Call reinit_frame_cache when assigning
+ to a register.
+
Mon Oct 25 11:08:59 1993 Stu Grossman (grossman at cygnus.com)
* infrun.c (wait_for_inferior): Fix PC out of objfile bounds
diff --git a/gdb/valops.c b/gdb/valops.c
index 1c7e3b9..fd2441b 100644
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -374,6 +374,12 @@ value_assign (toval, fromval)
VALUE_CONTENTS (fromval), TYPE_LENGTH (type));
#endif
}
+ /* Assigning to the stack pointer, frame pointer, and other
+ (architecture and calling convention specific) registers may
+ cause the frame cache to be out of date. We just do this
+ on all assignments to registers for simplicity; I doubt the slowdown
+ matters. */
+ reinit_frame_cache ();
break;
case lval_reg_frame_relative:
@@ -463,6 +469,9 @@ value_assign (toval, fromval)
type = VALUE_TYPE (fromval);
}
+ /* FIXME: This loses if fromval is a different size than toval, for
+ example because fromval got cast in the REGISTER_CONVERTIBLE case
+ above. */
val = allocate_value (type);
memcpy (val, toval, VALUE_CONTENTS_RAW (val) - (char *) val);
memcpy (VALUE_CONTENTS_RAW (val), VALUE_CONTENTS (fromval),