summaryrefslogtreecommitdiff
path: root/gdb/frame-unwind.c
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2008-05-06 18:37:46 +0000
committerJoel Brobecker <brobecker@gnat.com>2008-05-06 18:37:46 +0000
commit8dd1e9a0cedd75389d7b9c80681bc5e435f245c6 (patch)
tree0818f71102811f5d9aff8550afa6c77531b3bc11 /gdb/frame-unwind.c
parentaa558a3f414492fc4939cbf4761b4a496a131e73 (diff)
downloadgdb-8dd1e9a0cedd75389d7b9c80681bc5e435f245c6.tar.gz
* frame-unwind.c (frame_unwind_got_bytes): New function.
* frame-unwind.h (frame_unwind_got_bytes): Add declaration. * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update for unwinder changes.
Diffstat (limited to 'gdb/frame-unwind.c')
-rw-r--r--gdb/frame-unwind.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gdb/frame-unwind.c b/gdb/frame-unwind.c
index 73842594334..cb79f4c67df 100644
--- a/gdb/frame-unwind.c
+++ b/gdb/frame-unwind.c
@@ -170,6 +170,17 @@ frame_unwind_got_constant (struct frame_info *frame, int regnum,
return reg_val;
}
+struct value *
+frame_unwind_got_bytes (struct frame_info *frame, int regnum, gdb_byte *buf)
+{
+ struct gdbarch *gdbarch = get_frame_arch (frame);
+ struct value *reg_val;
+
+ reg_val = value_zero (register_type (gdbarch, regnum), not_lval);
+ memcpy (value_contents_raw (reg_val), buf, register_size (gdbarch, regnum));
+ return reg_val;
+}
+
/* Return a value which indicates that FRAME's saved version of REGNUM
has a known constant (computed) value of ADDR. Convert the
CORE_ADDR to a target address if necessary. */