aboutsummaryrefslogtreecommitdiff
path: root/gdb/frame.h
diff options
context:
space:
mode:
authorUlrich Weigand <uweigand@de.ibm.com>2007-01-08 17:34:12 +0000
committerUlrich Weigand <uweigand@de.ibm.com>2007-01-08 17:34:12 +0000
commit00fa51f6801ada6b33763db75f5cdab6c74ea90b (patch)
tree5655c58c8bee2c41ad8d0a09542f3c3d05a38886 /gdb/frame.h
parent42037fe5bbb1bc401de372fca49768eeef2c21dc (diff)
downloadgdb-00fa51f6801ada6b33763db75f5cdab6c74ea90b.zip
gdb-00fa51f6801ada6b33763db75f5cdab6c74ea90b.tar.gz
gdb-00fa51f6801ada6b33763db75f5cdab6c74ea90b.tar.bz2
* frame.c (get_frame_register_bytes): New function.
(put_frame_register_bytes): Likewise. * frame.h (get_frame_register_bytes): Declare. (put_frame_register_bytes): Likewise. * findvar.c (value_from_register): Always construct lval_register values. Use get_frame_register_bytes. * valops.c (value_assign): Use get_frame_register_bytes and put_frame_register_bytes.
Diffstat (limited to 'gdb/frame.h')
-rw-r--r--gdb/frame.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/gdb/frame.h b/gdb/frame.h
index 5843a25..a0b41a5 100644
--- a/gdb/frame.h
+++ b/gdb/frame.h
@@ -491,6 +491,18 @@ extern void frame_register (struct frame_info *frame, int regnum,
extern void put_frame_register (struct frame_info *frame, int regnum,
const gdb_byte *buf);
+/* Read LEN bytes from one or multiple registers starting with REGNUM
+ in frame FRAME, starting at OFFSET, into BUF. */
+extern int get_frame_register_bytes (struct frame_info *frame, int regnum,
+ CORE_ADDR offset, int len,
+ gdb_byte *myaddr);
+
+/* Write LEN bytes to one or multiple registers starting with REGNUM
+ in frame FRAME, starting at OFFSET, into BUF. */
+extern void put_frame_register_bytes (struct frame_info *frame, int regnum,
+ CORE_ADDR offset, int len,
+ const gdb_byte *myaddr);
+
/* Map between a frame register number and its name. A frame register
space is a superset of the cooked register space --- it also
includes builtin registers. If NAMELEN is negative, use the NAME's