[PATCH] Always print call-clobbered registers in outer frames. (was: Re: [PATCH+DOC] Print registers not saved in the frame as "<not saved>", instead of "<optimized out>".)

Doug Evans dje@google.com
Thu Sep 19 23:22:00 GMT 2013


Pedro Alves writes:
 > gdb/
 > 2013-09-18  Pedro Alves  <palves@redhat.com>
 > 
 > 	* findvar.c (value_of_register): Rename to ...
 > 	(value_of_register_helper): ... this.
 > 	(value_of_register): Reimplement.
 > 	* infcmd.c (default_print_one_register_info): Use
 > 	value_of_register instead of get_frame_register_value.
 > 	* mi/mi-main.c (output_register): Use value_of_register instead of
 > 	get_frame_register_value.
 > 
 > gdb/testsuite/
 > 2013-09-18  Pedro Alves  <palves@redhat.com>
 > 
 > 	* gdb.dwarf2/dw2-reg-undefined.exp: Expect hex numbers instead of
 > 	"<optimized out>" for all frames.
 > 	* gdb.mi/mi-reg-undefined.exp (opt_out_pattern): Delete.
 > 	(top level): Expect hex numbers instead of "<optimized out>" for
 > 	all frames.
 > 
 > gdb/doc/
 > 2013-09-18  Pedro Alves  <palves@redhat.com>
 > 
 > 	* gdb.texinfo (Registers): Expand explanation of not-saved
 > 	call-clobbered registers in frames other than the innermost.

Sorry for the followup.
This doesn't have to be part of this patch of course, but IWBN if "i reg"
included a note next to register values obtained via heuristics.
[such values could have a flag set]

It could even be just a general warning printed by "i reg" in
non-inner-most frames, but it feels like the above shouldn't be too hard.



More information about the Gdb-patches mailing list