X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2FNEWS;h=91add18d6f591aff77049be5f484505040aed4f8;hb=bf84f7066626c78884436e1c39fb60f04c665f21;hp=b0f54473e2f39675c955df357f26c4437e086134;hpb=45e4216376f37e543fc80062025cab0c2d9faf35;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/NEWS b/gdb/NEWS index b0f54473e2..91add18d6f 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -1,7 +1,40 @@ What has changed in GDB? (Organized release by release) -*** Changes since GDB 8.3 +*** Changes since GDB 9 + +* New features in the GDB remote stub, GDBserver + + ** GDBserver is now supported on RISC-V GNU/Linux. + +* Debugging MS-Windows processes now sets $_exitsignal when the + inferior is terminated by a signal, instead of setting $_exitcode. + +* Multithreaded symbol loading has now been enabled by default on systems + that support it (see entry for GDB 9, below), providing faster + performance for programs with many symbols. + +* The $_siginfo convenience variable now also works on Windows targets, + and will display the EXCEPTION_RECORD of the last handled exception. + +* New commands + +set exec-file-mismatch -- Set exec-file-mismatch handling (ask|warn|off). +show exec-file-mismatch -- Show exec-file-mismatch handling (ask|warn|off). + Set or show the option 'exec-file-mismatch'. When GDB attaches to + a running process and can determine the name of the executable file + the process runs, this new option indicates whether to detect mismatch + between the name of the current executable file loaded by GDB + and the name of the executable file used to start the process. + If 'ask', the default, display a warning and ask the user + whether to load the process executable file; if 'warn', just display + a warning; if 'off', don't attempt to detect a mismatch. + +* New targets + +GNU/Linux/RISC-V (gdbserver) riscv*-*-linux* + +*** Changes in GDB 9 * 'thread-exited' event is now available in the annotations interface. @@ -33,6 +66,12 @@ provide the exitcode or exit status of the shell commands launched by GDB commands such as "shell", "pipe" and "make". +* The command define-prefix can now define user defined prefix commands. + User defined commands can now be defined using these user defined prefix + commands. + +* Command names can now use the . character. + * The RX port now supports XML target descriptions. * GDB now shows the Ada task names at more places, e.g. in task switching @@ -58,6 +97,25 @@ with extensions .gdb, .py and .scm are supported as long as GDB was compiled with support for that language. +* GDB now supports multithreaded symbol loading for higher performance. + This feature is still in testing, so it is disabled by default. You + can turn it on using 'maint set worker-threads unlimited'. + +* Multi-target debugging support + + GDB now supports debugging multiple target connections + simultaneously. For example, you can now have each inferior + connected to different remote servers running in different machines, + or have one inferior debugging a local native process, an inferior + debugging a core dump, etc. + + This support is experimental and comes with some limitations -- you + can only resume multiple targets simultaneously if all targets + support non-stop mode, and all remote stubs or servers must support + the same set of remote protocol features exactly. See also "info + connections" and "add-inferior -no-connection" below, and "maint set + target-non-stop" in the user manual. + * Python API ** The gdb.Value type has a new method 'format_string' which returns a @@ -96,6 +154,9 @@ pipe -d DELIM COMMAND DELIM SHELL_COMMAND With no COMMAND, repeat the last executed command and send its output to SHELL_COMMAND. +define-prefix COMMAND + Define or mark a command as a user-defined prefix command. + with SETTING [VALUE] [-- COMMAND] w SETTING [VALUE] [-- COMMAND] Temporarily set SETTING, run COMMAND, and restore SETTING. @@ -135,6 +196,12 @@ show print max-depth The default max-depth is 20, but this can be set to unlimited to get the old behavior back. +set print raw-values [on|off] +show print raw-values + By default, GDB applies the enabled pretty printers when printing a + value. This allows to ignore the enabled pretty printers for a series + of commands. The default is 'off'. + set logging debugredirect [on|off] By default, GDB debug output will go to both the terminal and the logfile. Set if you want debug output to go only to the log file. @@ -149,6 +216,21 @@ set style highlight background COLOR set style highlight intensity VALUE Control the styling of highlightings. +maint set worker-threads +maint show worker-threads + Control the number of worker threads that can be used by GDB. The + default is 0. "unlimited" lets GDB choose a number that is + reasonable. Currently worker threads are only used when demangling + the names of linker symbols. + +set style tui-border foreground COLOR +set style tui-border background COLOR + Control the styling of TUI borders. + +set style tui-active-border foreground COLOR +set style tui-active-border background COLOR + Control the styling of the active TUI border. + maint set test-settings KIND maint show test-settings KIND A set of commands used by the testsuite for exercising the settings @@ -168,6 +250,14 @@ show print frame-info 'frame', 'stepi'. The python frame filtering also respect this setting. The 'backtrace' '-frame-info' option can override this global setting. +set tui compact-source +show tui compact-source + + Enable the "compact" display mode for the TUI source window. The + compact display uses only as much space as is needed for the line + numbers in the current file, and only a single space to separate the + line numbers from the source. + info modules [-q] [REGEXP] Return a list of Fortran modules matching REGEXP, or all modules if no REGEXP is given. @@ -186,6 +276,15 @@ info module variables [-q] [-m MODULE_REGEXP] [-t TYPE_REGEXP] [REGEXP] TYPE_REGEXP matches against the variable type, and REGEXP matches against the variable name. +set debug remote-packet-max-chars +show debug remote-packet-max-chars + Controls the number of characters to output in a remote packet when using + "set debug remote". + The default is 512 bytes. + +info connections + Lists the target connections currently in use. + * Changed commands help @@ -230,6 +329,17 @@ show print raw-frame-arguments old commands are now deprecated and may be removed in a future release. +add-inferior [-no-connection] + The add-inferior command now supports a "-no-connection" flag that + makes the new inferior start with no target connection associated. + By default, the new inferior inherits the target connection of the + current inferior. See also "info connections". + +info inferior + This command's output now includes a new "Connection" column + indicating which target connection an inferior is bound to. See + "info connections" above. + maint test-options require-delimiter maint test-options unknown-is-error maint test-options unknown-is-operand @@ -261,6 +371,7 @@ focus, winheight, +, -, >, < -null-stop [on|off] -object [on|off] -pretty [on|off] + -raw-values [on|off] -repeats NUMBER|unlimited -static-members [on|off] -symbol [on|off] @@ -305,11 +416,11 @@ focus, winheight, +, -, >, < "on" if omitted. This allows writing compact command invocations, like for example: - (gdb) p -r -p -o 0 -- *myptr + (gdb) p -ra -p -o 0 -- *myptr The above is equivalent to: - (gdb) print -raw -pretty -object off -- *myptr + (gdb) print -raw-values -pretty -object off -- *myptr ** The "info types" command now supports the '-q' flag to disable printing of some header information in a similar fashion to "info @@ -353,6 +464,17 @@ focus, winheight, +, -, >, < These can be used to catch C++ exceptions in a similar fashion to the CLI commands 'catch throw', 'catch rethrow', and 'catch catch'. +-symbol-info-functions, -symbol-info-types, and -symbol-info-variables + These commands are the MI equivalent of the CLI commands 'info + functions', 'info types', and 'info variables' respectively. + +-symbol-info-modules, this is the MI equivalent of the CLI 'info + modules' command. + +-symbol-info-module-functions and -symbol-info-module-variables. + These commands are the MI equivalent of the CLI commands 'info + module functions' and 'info module variables'. + * Other MI changes ** The default version of the MI interpreter is now 3 (-i=mi3).