aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/frame-unwind.c8
2 files changed, 10 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 727baba..a2da98f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2013-11-27 Pedro Alves <palves@redhat.com>
+
+ * frame-unwind.c (frame_unwind_got_optimized): Return
+ an lval_register value instead of a not_lval value.
+
2013-11-27 Andrew Burgess <aburgess@broadcom.com>
* frame.c: Include "valprint.h".
diff --git a/gdb/frame-unwind.c b/gdb/frame-unwind.c
index ce2f6da..68879f3 100644
--- a/gdb/frame-unwind.c
+++ b/gdb/frame-unwind.c
@@ -161,10 +161,12 @@ default_frame_unwind_stop_reason (struct frame_info *this_frame,
struct value *
frame_unwind_got_optimized (struct frame_info *frame, int regnum)
{
- struct gdbarch *gdbarch = frame_unwind_arch (frame);
- struct type *reg_type = register_type (gdbarch, regnum);
+ struct value *val;
- return allocate_optimized_out_value (reg_type);
+ val = value_of_register_lazy (frame, regnum);
+ set_value_lazy (val, 0);
+ set_value_optimized_out (val, 1);
+ return val;
}
/* Return a value which indicates that FRAME copied REGNUM into