mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-03 13:23:00 +08:00
Make "set debug frame 1" output print <not saved> instead of <optimized out>.
"set debug frame 1" is printing "<optimized out>" for not saved registers. That's because the unwinders are returning optimized out not_lval values instead of optimized out lval_register values. "<not saved>" is how val_print_optimized_out prints lval_register values. ... - { frame_unwind_register_value (frame=0,regnum=7(rsp),...) -> <optimized out> } + { frame_unwind_register_value (frame=0,regnum=7(rsp),...) -> <not saved> } ... Tested on x86_64 Fedora 17. 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.
This commit is contained in:
@ -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
|
||||
|
Reference in New Issue
Block a user