aboutsummaryrefslogtreecommitdiff
path: root/gdb/frame.h
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2012-03-01 20:49:02 +0000
committerPedro Alves <palves@redhat.com>2012-03-01 20:49:02 +0000
commitad5f7d6ef7055f46c1734b9862bd156c355a8b3d (patch)
treefb20ff6ac3ace8b4d6d5c8e9b79bb49e1c415cb7 /gdb/frame.h
parentd3dc44a619a1f52ace35f3cccb16b6096e13b5da (diff)
downloadgdb-ad5f7d6ef7055f46c1734b9862bd156c355a8b3d.zip
gdb-ad5f7d6ef7055f46c1734b9862bd156c355a8b3d.tar.gz
gdb-ad5f7d6ef7055f46c1734b9862bd156c355a8b3d.tar.bz2
2012-03-01 Pedro Alves <palves@redhat.com>
PR gdb/13767 gdb/ * frame.c (read_frame_register_unsigned): New. * frame.h (read_frame_register_unsigned): Declare. * i387-tdep.c (print_i387_status_word): New parameter `status_p'. Handle it. (print_i387_control_word): New parameter `control_p'. Handle it. (i387_print_float_info): Handle unavailable float registers. gdb/testsuite/ * gdb.trace/unavailable.exp (gdb_unavailable_floats): New. (gdb_collect_globals_test): Call it.
Diffstat (limited to 'gdb/frame.h')
-rw-r--r--gdb/frame.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/frame.h b/gdb/frame.h
index 67dddbd..101db3b 100644
--- a/gdb/frame.h
+++ b/gdb/frame.h
@@ -500,6 +500,13 @@ extern ULONGEST frame_unwind_register_unsigned (struct frame_info *frame,
extern ULONGEST get_frame_register_unsigned (struct frame_info *frame,
int regnum);
+/* Read a a register from this, or unwind a register from the next
+ frame. Note that the read_frame methods are wrappers to
+ get_frame_register_value, that do not throw if the result is
+ optimized out or unavailable. */
+
+extern int read_frame_register_unsigned (struct frame_info *frame,
+ int regnum, ULONGEST *val);
/* Get the value of the register that belongs to this FRAME. This
function is a wrapper to the call sequence ``frame_register_unwind