What has changed in GDB?
(Organized release by release)
-*** Changes since GDB 6.5
+*** Changes since GDB 6.6
+
+* The GDB remote stub, gdbserver, now has lower overhead for high
+frequency signals (e.g. SIGALRM) via the QPassSignals packet.
+
+* GDB for MIPS targets now autodetects whether a remote target provides
+32-bit or 64-bit register values.
+
+* Support for C++ member pointers has been improved.
+
+* GDB now understands XML target descriptions, which specify the
+target's overall architecture. GDB can read a description from
+a local file or over the remote serial protocol.
+
+* Arrays of explicitly SIGNED or UNSIGNED CHARs are now printed as arrays
+ of numbers.
+
+* New commands
+
+set mem inaccessible-by-default
+show mem inaccessible-by-default
+ If the target supplies a memory map, for instance via the remote
+ protocol's "qXfer:memory-map:read" packet, setting this variable
+ prevents GDB from accessing memory outside the memory map. This
+ is useful for targets with memory mapped registers or which react
+ badly to accesses of unmapped address space.
+
+set breakpoint auto-hw
+show breakpoint auto-hw
+ If the target supplies a memory map, for instance via the remote
+ protocol's "qXfer:memory-map:read" packet, setting this variable
+ lets GDB use hardware breakpoints automatically for memory regions
+ where it can not use software breakpoints. This covers both the
+ "break" command and internal breakpoints used for other commands
+ including "next" and "finish".
+
+catch exception
+catch exception unhandled
+ Stop the program execution when Ada exceptions are raised.
+
+catch assert
+ Stop the program execution when an Ada assertion failed.
+
+set sysroot
+show sysroot
+ Set an alternate system root for target files. This is a more
+ general version of "set solib-absolute-prefix", which is now
+ an alias to "set sysroot".
+
+* New native configurations
+
+OpenBSD/sh sh*-*openbsd*
+
+set tdesc filename
+unset tdesc filename
+show tdesc filename
+ Use the specified local file as an XML target description, and do
+ not query the target for its built-in description.
+
+* New targets
+
+OpenBSD/sh sh*-*-openbsd*
+MIPS64 GNU/Linux (gdbserver) mips64-linux-gnu
+
+* New remote packets
+
+QPassSignals:
+ Ignore the specified signals; pass them directly to the debugged program
+ without stopping other threads or reporting them to GDB.
+
+qXfer:features:read:
+ Read an XML target description from the target, which describes its
+ features.
+
+*** Changes in GDB 6.6
+
+* New targets
+
+Xtensa xtensa-elf
+Cell Broadband Engine SPU spu-elf
+
+* GDB can now be configured as a cross-debugger targeting native Windows
+(mingw32) or Cygwin. It can communicate with a remote debugging stub
+running on a Windows system over TCP/IP to debug Windows programs.
+
+* The GDB remote stub, gdbserver, has been updated to support Windows and
+Cygwin debugging. Both single-threaded and multi-threaded programs are
+supported.
+
+* The "set trust-readonly-sections" command works again. This command was
+broken in GDB 6.3, 6.4, and 6.5.
+
+* The "load" command now supports writing to flash memory, if the remote
+stub provides the required support.
+
+* Support for GNU/Linux Thread Local Storage (TLS, per-thread variables) no
+longer requires symbolic debug information (e.g. DWARF-2).
+
+* New commands
+
+set substitute-path
+unset substitute-path
+show substitute-path
+ Manage a list of substitution rules that GDB uses to rewrite the name
+ of the directories where the sources are located. This can be useful
+ for instance when the sources were moved to a different location
+ between compilation and debugging.
+
+set trace-commands
+show trace-commands
+ Print each CLI command as it is executed. Each command is prefixed with
+ a number of `+' symbols representing the nesting depth.
+ The source command now has a `-v' option to enable the same feature.
+
+* REMOVED features
+
+The ARM Demon monitor support (RDP protocol, "target rdp").
+
+Kernel Object Display, an embedded debugging feature which only worked with
+an obsolete version of Cisco IOS.
+
+The 'set download-write-size' and 'show download-write-size' commands.
+
+* New remote packets
+
+qSupported:
+ Tell a stub about GDB client features, and request remote target features.
+ The first feature implemented is PacketSize, which allows the target to
+ specify the size of packets it can handle - to minimize the number of
+ packets required and improve performance when connected to a remote
+ target.
+
+qXfer:auxv:read:
+ Fetch an OS auxilliary vector from the remote stub. This packet is a
+ more efficient replacement for qPart:auxv:read.
+
+qXfer:memory-map:read:
+ Fetch a memory map from the remote stub, including information about
+ RAM, ROM, and flash memory devices.
+
+vFlashErase:
+vFlashWrite:
+vFlashDone:
+ Erase and program a flash memory device.
+
+* Removed remote packets
+
+qPart:auxv:read:
+ This packet has been replaced by qXfer:auxv:read. Only GDB 6.4 and 6.5
+ used it, and only gdbserver implemented it.
*** Changes in GDB 6.5
native console support, and remote communications using either
network sockets or serial ports.
+* Improved Modula-2 language support
+
+GDB can now print most types in the Modula-2 syntax. This includes:
+basic types, set types, record types, enumerated types, range types,
+pointer types and ARRAY types. Procedure var parameters are correctly
+printed and hexadecimal addresses and character constants are also
+written in the Modula-2 syntax. Best results can be obtained by using
+GNU Modula-2 together with the -gdwarf-2 command line option.
+
* REMOVED features
The ARM rdi-share module.