diff options
author | Andrew Burgess <aburgess@broadcom.com> | 2013-11-27 17:49:59 +0000 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2013-11-27 17:49:59 +0000 |
commit | f6c01fc5156fde67bd62b1d66dee769dd88bf51e (patch) | |
tree | 33ba2a3dfbcc2ee6f4796d9de1591b59ee59f0d6 /gdb | |
parent | b35d44f1af711925bfa4344ef00470fee67122f1 (diff) | |
download | gdb-f6c01fc5156fde67bd62b1d66dee769dd88bf51e.zip gdb-f6c01fc5156fde67bd62b1d66dee769dd88bf51e.tar.gz gdb-f6c01fc5156fde67bd62b1d66dee769dd88bf51e.tar.bz2 |
Make "set debug frame 1" use the standard print routine for optimized out values.
...
- { frame_unwind_register_value (frame=0,regnum=7(rsp),...) -> optimized out }
+ { frame_unwind_register_value (frame=0,regnum=7(rsp),...) -> <optimized out> }
...
Tested on x86_64 Fedora 17.
2013-11-27 Andrew Burgess <aburgess@broadcom.com>
* frame.c: Include "valprint.h".
(frame_unwind_register_value): Use value_optimized_out.
* value.c (value_fetch_lazy): Likewise.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/frame.c | 6 | ||||
-rw-r--r-- | gdb/value.c | 5 |
3 files changed, 15 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c144565..727baba 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2013-11-27 Andrew Burgess <aburgess@broadcom.com> + + * frame.c: Include "valprint.h". + (frame_unwind_register_value): Use value_optimized_out. + * value.c (value_fetch_lazy): Likewise. + 2013-11-26 Andrew Burgess <aburgess@broadcom.com> * value.c (allocate_optimized_out_value): Mark value as non-lazy. diff --git a/gdb/frame.c b/gdb/frame.c index f77ce75..4e6e06c 100644 --- a/gdb/frame.c +++ b/gdb/frame.c @@ -44,6 +44,7 @@ #include "inline-frame.h" #include "tracepoint.h" #include "hashtab.h" +#include "valprint.h" static struct frame_info *get_prev_frame_1 (struct frame_info *this_frame); static struct frame_info *get_prev_frame_raw (struct frame_info *this_frame); @@ -1047,7 +1048,10 @@ frame_unwind_register_value (struct frame_info *frame, int regnum) { fprintf_unfiltered (gdb_stdlog, "->"); if (value_optimized_out (value)) - fprintf_unfiltered (gdb_stdlog, " optimized out"); + { + fprintf_unfiltered (gdb_stdlog, " "); + val_print_optimized_out (value, gdb_stdlog); + } else { if (VALUE_LVAL (value) == lval_register) diff --git a/gdb/value.c b/gdb/value.c index 8052f52..a64e7e1 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -3572,7 +3572,10 @@ value_fetch_lazy (struct value *val) fprintf_unfiltered (gdb_stdlog, "->"); if (value_optimized_out (new_val)) - fprintf_unfiltered (gdb_stdlog, " optimized out"); + { + fprintf_unfiltered (gdb_stdlog, " "); + val_print_optimized_out (new_val, gdb_stdlog); + } else { int i; |