What has changed in GDB?
(Organized release by release)
-*** Changes since GDB 7.6
+*** Changes since GDB 7.7
+
+* Guile scripting
+
+ GDB now has support for scripting using Guile. Whether this is
+ available is determined at configure time.
+ Guile version 2.0 or greater is required.
+ Guile version 2.0.9 is well tested, earlier 2.0 versions are not.
+
+* New commands (for set/show, see "New options" below)
+
+guile [code]
+gu [code]
+ Invoke CODE by passing it to the Guile interpreter.
+
+guile-repl
+gr
+ Start a Guile interactive prompt (or "repl" for "read-eval-print loop").
+
+info auto-load guile-scripts [regexp]
+ Print the list of automatically loaded Guile scripts.
+
+* The source command is now capable of sourcing Guile scripts.
+ This feature is dependent on the debugger being built with Guile support.
+
+* New options
+
+set print symbol-loading (off|brief|full)
+show print symbol-loading
+ Control whether to print informational messages when loading symbol
+ information for a file. The default is "full", but when debugging
+ programs with large numbers of shared libraries the amount of output
+ becomes less useful.
+
+set guile print-stack (none|message|full)
+show guile print-stack
+ Show a stack trace when an error is encountered in a Guile script.
+
+set auto-load guile-scripts (on|off)
+show auto-load guile-scripts
+ Control auto-loading of Guile script files.
+
+maint ada set ignore-descriptive-types (on|off)
+maint ada show ignore-descriptive-types
+ Control whether the debugger should ignore descriptive types in Ada
+ programs. The default is not to ignore the descriptive types. See
+ the user manual for more details on descriptive types and the intended
+ usage of this option.
+
+* New features in the GDB remote stub, GDBserver
+
+ ** New option --debug-format=option1[,option2,...] allows one to add
+ additional text to each output. At present only timestamps
+ are supported: --debug-format=timestamps.
+ Timestamps can also be turned on with the
+ "monitor set debug-format timestamps" command from GDB.
+
+* The 'record instruction-history' command now starts counting instructions
+ at one. This also affects the instruction ranges reported by the
+ 'record function-call-history' command when given the /i modifier.
+
+* The command 'record function-call-history' supports a new modifier '/c' to
+ indent the function names based on their call stack depth.
+ The fields for the '/i' and '/l' modifier have been reordered.
+ The source line range is now prefixed with 'at'.
+ The instruction range is now prefixed with 'inst'.
+ Both ranges are now printed as '<from>, <to>' to allow copy&paste to the
+ "record instruction-history" and "list" commands.
+
+* The ranges given as arguments to the 'record function-call-history' and
+ 'record instruction-history' commands are now inclusive.
+
+* The btrace record target now supports the 'record goto' command.
+ For locations inside the execution trace, the back trace is computed
+ based on the information stored in the execution trace.
+
+* The btrace record target supports limited reverse execution and replay.
+ The target does not record data and therefore does not allow reading
+ memory or registers.
+
+* The "catch syscall" command now works on s390*-linux* targets.
+
+* New remote packets
+
+qXfer:btrace:read's annex
+ The qXfer:btrace:read packet supports a new annex 'delta' to read
+ branch trace incrementally.
+
+* Python Scripting
+
+ ** Valid Python operations on gdb.Value objects representing
+ structs/classes invoke the corresponding overloaded operators if
+ available.
+
+* New targets
+PowerPC64 GNU/Linux little-endian powerpc64le-*-linux*
+
+* The "dll-symbols" command, and its two aliases ("add-shared-symbol-files"
+ and "assf"), have been deprecated. Use the "sharedlibrary" command, or
+ its alias "share", instead.
+
+*** Changes in GDB 7.7
+
+* Improved support for process record-replay and reverse debugging on
+ arm*-linux* targets. Support for thumb32 and syscall instruction
+ recording has been added.
+
+* GDB now supports SystemTap SDT probes on AArch64 GNU/Linux.
* GDB now supports Fission DWP file format version 2.
http://gcc.gnu.org/wiki/DebugFission
Before, the former would print "<optimized out>", and the latter
"*value not available*".
+* New script contrib/gdb-add-index.sh for adding .gdb_index sections
+ to binaries.
+
* Python scripting
** Frame filters and frame decorators have been added.
** Temporary breakpoints are now supported.
+ ** Line tables representation has been added.
+ ** New attribute 'parent_type' for gdb.Field objects.
+ ** gdb.Field objects can be used as subscripts on gdb.Value objects.
+ ** New attribute 'name' for gdb.Type objects.
* New targets
can be identified by its filename or by an address that lies within
the boundaries of this symbol file in memory.
+info exceptions
+info exceptions REGEXP
+ Display the list of Ada exceptions defined in the program being
+ debugged. If provided, only the exceptions whose names match REGEXP
+ are listed.
+
* New options
set debug symfile off|on
Specifies whether Unix child processes are started via a shell or
directly.
+set code-cache
+show code-cache
+ Use the target memory cache for accesses to the code segment. This
+ improves performance of remote debugging (particularly disassembly).
+
* You can now use a literal value 'unlimited' for options that
interpret 0 or -1 as meaning "unlimited". E.g., "set
trace-buffer-size unlimited" is now an alias for "set
trace-buffer-size -1" and "set height unlimited" is now an alias for
"set height 0".
+* The "set debug symtab-create" debugging option of GDB has been changed to
+ accept a verbosity level. 0 means "off", 1 provides basic debugging
+ output, and values of 2 or greater provides more verbose output.
+
* New command-line options
--configuration
Display the details of GDB configure-time options.
* MI changes
+ ** All MI commands now accept an optional "--language" option.
+ Support for this feature can be verified by using the "-list-features"
+ command, which should contain "language-option".
+
+ ** The new command -info-gdb-mi-command allows the user to determine
+ whether a GDB/MI command is supported or not.
+
+ ** The "^error" result record returned when trying to execute an undefined
+ GDB/MI command now provides a variable named "code" whose content is the
+ "undefined-command" error code. Support for this feature can be verified
+ by using the "-list-features" command, which should contain
+ "undefined-command-error-code".
+
** The -trace-save MI command can optionally save trace buffer in Common
Trace Format now.
** The -exec-run command now accepts an optional "--start" option.
When used, the command follows the same semantics as the "start"
command, stopping the program's execution at the start of its
- main subprogram.
+ main subprogram. Support for this feature can be verified using
+ the "-list-features" command, which should contain
+ "exec-run-start-option".
** The new commands -catch-assert and -catch-exceptions insert
catchpoints stopping the program when Ada exceptions are raised.
+ ** The new command -info-ada-exceptions provides the equivalent of
+ the new "info exceptions" command.
+
* New system-wide configuration scripts
A GDB installation now provides scripts suitable for use as system-wide
configuration scripts for the following systems:
C++ and Java objects.
** "explore" and its sub commands "explore value" and "explore type"
- can be used to reccursively explore values and types of
+ can be used to recursively explore values and types of
expressions. These commands are available only if GDB is
configured with '--with-python'.
two different machines, type ``./configure host -target=targ''.
Host is the machine where GDB will run; targ is the machine
where the program that you are debugging will run.
+
+ * GDB now supports access to Intel(R) MPX registers on GNU/Linux.