mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-26 05:47:26 +08:00
Document 'set print frame-info|frame-arguments presence'.
gdb/ChangeLog 2019-06-19 Philippe Waroquiers <philippe.waroquiers@skynet.be> * NEWS: Mention 'set|show print frame-info'. Mention new 'presence' value for 'frame-arguments'. Mention new '-frame-info' backtrace argument. Mention that python frame filtering code is now consistent with what 'backtrace' command prints. gdb/doc/ChangeLog 2019-07-29 Philippe Waroquiers <philippe.waroquiers@skynet.be> * gdb.texinfo (Backtrace): Document the new '-frame-info' backtrace option. Reference 'set print frame-info'. (Print Settings): Document 'set|show print frame-info'. Document new 'presence' value for 'set print frame-arguments.
This commit is contained in:
@ -1,3 +1,10 @@
|
|||||||
|
2019-07-29 Philippe Waroquiers <philippe.waroquiers@skynet.be>
|
||||||
|
|
||||||
|
* NEWS: Mention 'set|show print frame-info'. Mention new
|
||||||
|
'presence' value for 'frame-arguments'. Mention new '-frame-info'
|
||||||
|
backtrace argument. Mention that python frame filtering code
|
||||||
|
is now consistent with what 'backtrace' command prints.
|
||||||
|
|
||||||
2019-07-29 Philippe Waroquiers <philippe.waroquiers@skynet.be>
|
2019-07-29 Philippe Waroquiers <philippe.waroquiers@skynet.be>
|
||||||
|
|
||||||
* frame.h (enum print_what): New value 'SHORT_LOCATION', update
|
* frame.h (enum print_what): New value 'SHORT_LOCATION', update
|
||||||
|
19
gdb/NEWS
19
gdb/NEWS
@ -36,6 +36,11 @@
|
|||||||
** gdb.Type has a new property 'objfile' which returns the objfile the
|
** gdb.Type has a new property 'objfile' which returns the objfile the
|
||||||
type was defined in.
|
type was defined in.
|
||||||
|
|
||||||
|
** The frame information printed by the python frame filtering code
|
||||||
|
is now consistent with what the 'backtrace' command prints when
|
||||||
|
there are no filters, or when the 'backtrace' '-no-filters' option
|
||||||
|
is given.
|
||||||
|
|
||||||
* New commands
|
* New commands
|
||||||
|
|
||||||
| [COMMAND] | SHELL_COMMAND
|
| [COMMAND] | SHELL_COMMAND
|
||||||
@ -104,6 +109,14 @@ maint show test-settings KIND
|
|||||||
A set of commands used by the testsuite for exercising the settings
|
A set of commands used by the testsuite for exercising the settings
|
||||||
infrastructure.
|
infrastructure.
|
||||||
|
|
||||||
|
set print frame-info [short-location|location|location-and-address
|
||||||
|
|source-and-location|source-line|auto]
|
||||||
|
show print frame-info
|
||||||
|
This controls what frame information is printed by the commands printing
|
||||||
|
a frame. This setting will e.g. influence the behaviour of 'backtrace',
|
||||||
|
'frame', 'stepi'. The python frame filtering also respect this setting.
|
||||||
|
The 'backtrace' '-frame-info' option can override this global setting.
|
||||||
|
|
||||||
* Changed commands
|
* Changed commands
|
||||||
|
|
||||||
help
|
help
|
||||||
@ -130,6 +143,10 @@ show style
|
|||||||
a style name in their output using its own style, to help
|
a style name in their output using its own style, to help
|
||||||
the user visualize the different styles.
|
the user visualize the different styles.
|
||||||
|
|
||||||
|
set print frame-arguments
|
||||||
|
The new value 'presence' indicates to only indicate the presence of
|
||||||
|
arguments using ..., instead of printing argument names and values.
|
||||||
|
|
||||||
set print raw-frame-arguments
|
set print raw-frame-arguments
|
||||||
show print raw-frame-arguments
|
show print raw-frame-arguments
|
||||||
|
|
||||||
@ -184,6 +201,8 @@ maint show test-options-completion-result
|
|||||||
-entry-values no|only|preferred|if-needed|both|compact|default
|
-entry-values no|only|preferred|if-needed|both|compact|default
|
||||||
-frame-arguments all|scalars|none
|
-frame-arguments all|scalars|none
|
||||||
-raw-frame-arguments [on|off]
|
-raw-frame-arguments [on|off]
|
||||||
|
-frame-info auto|source-line|location|source-and-location
|
||||||
|
|location-and-address|short-location
|
||||||
-past-main [on|off]
|
-past-main [on|off]
|
||||||
-past-entry [on|off]
|
-past-entry [on|off]
|
||||||
|
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
2019-07-29 Philippe Waroquiers <philippe.waroquiers@skynet.be>
|
||||||
|
|
||||||
|
* gdb.texinfo (Backtrace): Document the new '-frame-info'
|
||||||
|
backtrace option. Reference 'set print frame-info'.
|
||||||
|
(Print Settings): Document 'set|show print frame-info'.
|
||||||
|
Document new 'presence' value for 'set print frame-arguments.
|
||||||
|
|
||||||
2019-07-22 Andrew Burgess <andrew.burgess@embecosm.com>
|
2019-07-22 Andrew Burgess <andrew.burgess@embecosm.com>
|
||||||
|
|
||||||
* gdb.texinfo (Symbols): Add information about -q flag to "info
|
* gdb.texinfo (Symbols): Add information about -q flag to "info
|
||||||
|
@ -7806,6 +7806,10 @@ Related setting: @ref{set print frame-arguments}.
|
|||||||
@item -raw-frame-arguments [@code{on}|@code{off}]
|
@item -raw-frame-arguments [@code{on}|@code{off}]
|
||||||
Set whether to print frame arguments in raw form.
|
Set whether to print frame arguments in raw form.
|
||||||
Related setting: @ref{set print raw-frame-arguments}.
|
Related setting: @ref{set print raw-frame-arguments}.
|
||||||
|
|
||||||
|
@item -frame-info @code{auto}|@code{source-line}|@code{location}|@code{source-and-location}|@code{location-and-address}|@code{short-location}
|
||||||
|
Set printing of frame information.
|
||||||
|
Related setting: @ref{set print frame-info}.
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
The optional @var{qualifier} is maintained for backward compatibility.
|
The optional @var{qualifier} is maintained for backward compatibility.
|
||||||
@ -7870,6 +7874,8 @@ The value of parameter @code{data} in frame 1 has been replaced by
|
|||||||
only if it is a scalar (integer, pointer, enumeration, etc). See command
|
only if it is a scalar (integer, pointer, enumeration, etc). See command
|
||||||
@kbd{set print frame-arguments} in @ref{Print Settings} for more details
|
@kbd{set print frame-arguments} in @ref{Print Settings} for more details
|
||||||
on how to configure the way function parameter values are printed.
|
on how to configure the way function parameter values are printed.
|
||||||
|
The command @kbd{set print frame-info} (@pxref{Print Settings}) controls
|
||||||
|
what frame information is printed.
|
||||||
|
|
||||||
@cindex optimized out, in backtrace
|
@cindex optimized out, in backtrace
|
||||||
@cindex function call arguments, optimized out
|
@cindex function call arguments, optimized out
|
||||||
@ -10816,7 +10822,7 @@ If the number is 0, then the printing is unlimited.
|
|||||||
@cindex printing frame argument values
|
@cindex printing frame argument values
|
||||||
@cindex print all frame argument values
|
@cindex print all frame argument values
|
||||||
@cindex print frame argument values for scalars only
|
@cindex print frame argument values for scalars only
|
||||||
@cindex do not print frame argument values
|
@cindex do not print frame arguments
|
||||||
This command allows to control how the values of arguments are printed
|
This command allows to control how the values of arguments are printed
|
||||||
when the debugger prints a frame (@pxref{Frames}). The possible
|
when the debugger prints a frame (@pxref{Frames}). The possible
|
||||||
values are:
|
values are:
|
||||||
@ -10844,6 +10850,17 @@ is replaced by @code{@dots{}}. In this case, the example above now becomes:
|
|||||||
#1 0x08048361 in call_me (i=@dots{}, s=@dots{}, ss=@dots{}, u=@dots{}, e=@dots{})
|
#1 0x08048361 in call_me (i=@dots{}, s=@dots{}, ss=@dots{}, u=@dots{}, e=@dots{})
|
||||||
at frame-args.c:23
|
at frame-args.c:23
|
||||||
@end smallexample
|
@end smallexample
|
||||||
|
|
||||||
|
@item presence
|
||||||
|
Only the presence of arguments is indicated by @code{@dots{}}.
|
||||||
|
The @code{@dots{}} are not printed for function without any arguments.
|
||||||
|
None of the argument names and values are printed.
|
||||||
|
In this case, the example above now becomes:
|
||||||
|
|
||||||
|
@smallexample
|
||||||
|
#1 0x08048361 in call_me (@dots{}) at frame-args.c:23
|
||||||
|
@end smallexample
|
||||||
|
|
||||||
@end table
|
@end table
|
||||||
|
|
||||||
By default, only scalar arguments are printed. This command can be used
|
By default, only scalar arguments are printed. This command can be used
|
||||||
@ -10854,8 +10871,8 @@ information printed in each frame, making the backtrace more readable.
|
|||||||
Also, it improves performance when displaying Ada frames, because
|
Also, it improves performance when displaying Ada frames, because
|
||||||
the computation of large arguments can sometimes be CPU-intensive,
|
the computation of large arguments can sometimes be CPU-intensive,
|
||||||
especially in large applications. Setting @code{print frame-arguments}
|
especially in large applications. Setting @code{print frame-arguments}
|
||||||
to @code{scalars} (the default) or @code{none} avoids this computation,
|
to @code{scalars} (the default), @code{none} or @code{presence} avoids
|
||||||
thus speeding up the display of each Ada frame.
|
this computation, thus speeding up the display of each Ada frame.
|
||||||
|
|
||||||
@item show print frame-arguments
|
@item show print frame-arguments
|
||||||
Show how the value of arguments should be displayed when printing a frame.
|
Show how the value of arguments should be displayed when printing a frame.
|
||||||
@ -10988,6 +11005,46 @@ entry resolution see @ref{set debug entry-values}.
|
|||||||
Show the method being used for printing of frame argument values at function
|
Show the method being used for printing of frame argument values at function
|
||||||
entry.
|
entry.
|
||||||
|
|
||||||
|
@anchor{set print frame-info}
|
||||||
|
@item set print frame-info @var{value}
|
||||||
|
@kindex set print frame-info
|
||||||
|
@cindex printing frame information
|
||||||
|
@cindex frame information, printing
|
||||||
|
This command allows to control the information printed when
|
||||||
|
the debugger prints a frame. See @ref{Frames}, @ref{Backtrace},
|
||||||
|
for a general explanation about frames and frame information.
|
||||||
|
Note that some other settings (such as @code{set print frame-arguments}
|
||||||
|
and @code{set print address}) are also influencing if and how some frame
|
||||||
|
information is displayed. In particular, the frame program counter is never
|
||||||
|
printed if @code{set print address} is off.
|
||||||
|
|
||||||
|
The possible values for @code{set print frame-info} are:
|
||||||
|
@table @code
|
||||||
|
@item short-location
|
||||||
|
Print the frame level, the program counter (if not at the
|
||||||
|
beginning of the location source line), the function, the function
|
||||||
|
arguments.
|
||||||
|
@item location
|
||||||
|
Same as @code{short-location} but also print the source file and source line
|
||||||
|
number.
|
||||||
|
@item location-and-address
|
||||||
|
Same as @code{location} but print the program counter even if located at the
|
||||||
|
beginning of the location source line.
|
||||||
|
@item source-line
|
||||||
|
Print the program counter (if not at the beginning of the location
|
||||||
|
source line), the line number and the source line.
|
||||||
|
@item source-and-location
|
||||||
|
Print what @code{location} and @code{source-line} are printing.
|
||||||
|
@item auto
|
||||||
|
The information printed for a frame is decided automatically
|
||||||
|
by the @value{GDBN} command that prints a frame.
|
||||||
|
For example, @code{frame} prints the information printed by
|
||||||
|
@code{source-and-location} while @code{stepi} will switch between
|
||||||
|
@code{source-line} and @code{source-and-location} depending on the program
|
||||||
|
counter.
|
||||||
|
The default value is @code{auto}.
|
||||||
|
@end table
|
||||||
|
|
||||||
@anchor{set print repeats}
|
@anchor{set print repeats}
|
||||||
@item set print repeats @var{number-of-repeats}
|
@item set print repeats @var{number-of-repeats}
|
||||||
@itemx set print repeats unlimited
|
@itemx set print repeats unlimited
|
||||||
|
Reference in New Issue
Block a user