[ANNOUNCEMENT] GDB 6.7 released!

Joel Brobecker
2007-10-10T19:19:55Z

GDB 6.7 released!

Release 6.7 of GDB, the GNU Debugger, is now available via anonymous
FTP. GDB is a source-level debugger for Ada, C, C++, Objective-C,
Pascal and many other languages. GDB can target (i.e., debug programs
running on) more than a dozen different processor architectures, and GDB
itself can run on most popular GNU/Linux, Unix and Microsoft Windows
variants.

You can download GDB from the GNU FTP server in the directory:

ftp://ftp.gnu.org/gnu/gdb

The vital stats:

Size md5sum Name
15MB d6e7c0ad7654bc91a3a457fabb6ad6c6 gdb-6.7.tar.bz2
20MB 5f415f8bef0f3a4947845c78ab102b2d gdb-6.7.tar.gz

There is a web page for GDB at:

http://www.gnu.org/software/gdb/

That page includes information about GDB mailing lists (an announcement
mailing list, developers discussion lists, etc.), details on how to
access GDB's CVS repository, locations for development snapshots,
preformatted documentation, and links to related information around
the net. We will put errata notes and host-specific tips for this release
on-line as any problems come up. All mailing lists archives are also
browsable via the web.

Since the previous release (6.5, released in December 2006) we have made
many fixes and enhancements including:

* Resolved 101 resource leaks, null pointer dereferences, etc. in gdb,
bfd, libiberty and opcodes, as revealed by static analysis donated by
Coverity, Inc. (http://scan.coverity.com).

* When looking up multiply-defined global symbols, GDB will now prefer the
symbol definition in the current shared library if it was built using the
-Bsymbolic linker option.

* When the Text User Interface (TUI) is not configured, GDB will now
recognize the -tui command-line option and print a message that the TUI
is not supported.

* 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.

* Vectors of single-byte data use a new integer type which is not
automatically displayed as character or string data.

* The /s format now works with the print command. It displays
arrays of single-byte integers and pointers to single-byte integers
as strings.

* Target descriptions can now describe target-specific registers,
for architectures which have implemented the support (currently
only ARM, M68K, and MIPS).

* GDB and the GDB remote stub, gdbserver, now support the XScale
iWMMXt coprocessor.

* The GDB remote stub, gdbserver, has been updated to support
ARM Windows CE (mingw32ce) debugging, and GDB Windows CE support
has been rewritten to use the standard GDB remote protocol.

* GDB can now step into C++ functions which are called through thunks.

* GDB for the Cell/B.E. SPU now supports overlay debugging.

* The GDB remote protocol "qOffsets" packet can now honor ELF segment
layout. It also supports a TextSeg= and DataSeg= response when only
segment base addresses (rather than offsets) are available.

* The /i format now outputs any trailing branch delay slot instructions
immediately following the last instruction within the count specified.

* The GDB remote protocol "T" stop reply packet now supports a
"library" response. Combined with the new "qXfer:libraries:read"
packet, this response allows GDB to debug shared libraries on targets
where the operating system manages the list of loaded libraries (e.g.
Windows and SymbianOS).

* The GDB remote stub, gdbserver, now supports dynamic link libraries
(DLLs) on Windows and Windows CE targets.

* GDB now supports a faster verification that a .debug file matches
its binary according to its build-id signature, if the signature is
present.

The following new commands have been added:

set remoteflow
show remoteflow
Enable or disable hardware flow control (RTS/CTS) on the serial port
when debugging using remote targets.

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".

info spu
Provide extended SPU facility status information. This set of
commands is available only when debugging the Cell/B.E. SPU
architecture.

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.

Support for some new native configuration have been added:

OpenBSD/sh sh*-*openbsd*

Support for the following targets has been added:

OpenBSD/sh sh*-*-openbsd*
MIPS64 GNU/Linux (gdbserver) mips64-linux-gnu
Toshiba Media Processor mep-elf

The following new remote packets have been introduced:

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.

qXfer:spu:read:
qXfer:spu:write:
Read or write contents of an spufs file on the target system. These

qXfer:libraries:read:
Report the loaded shared libraries. Combined with new "T" packet
response, this packet allows GDB to debug shared libraries on
targets where the operating system manages the list of loaded
libraries (e.g. Windows and SymbianOS).

Support for these obsolete configurations has been removed:

alpha*-*-osf1*
alpha*-*-osf2*
d10v-*-*
hppa*-*-hiux*
i[34567]86-ncr-*
i[34567]86-*-dgux*
i[34567]86-*-lynxos*
i[34567]86-*-netware*
i[34567]86-*-sco3.2v5*
i[34567]86-*-sco3.2v4*
i[34567]86-*-sco*
i[34567]86-*-sysv4.2*
i[34567]86-*-sysv4*
i[34567]86-*-sysv5*
i[34567]86-*-unixware2*
i[34567]86-*-unixware*
i[34567]86-*-sysv*
i[34567]86-*-isc*
m68*-cisco*-*
m68*-tandem-*
mips*-*-pe
rs6000-*-lynxos*
sh*-*-pe

Some other removed features:
target abug
target cpu32bug
target est
target rom68k

Various m68k-only ROM monitors.

target hms
target e7000
target sh3
target sh3e

Various Renesas ROM monitors and debugging interfaces for SH and
H8/300.

target ocd

Support for a Macraigor serial interface to on-chip debugging.
GDB does not directly support the newer parallel or USB
interfaces.

DWARF 1 support

A debug information format. The predecessor to DWARF 2 and
DWARF 3, which are still supported.

Support for the HP aCC compiler on HP-UX/PA-RISC

SOM-encapsulated symbolic debugging information, automatic
invocation of pxdb, and the aCC custom C++ ABI. This does not
affect HP-UX for Itanium or GCC for HP-UX/PA-RISC. Code compiled
with aCC can still be debugged on an assembly level.

MIPS ".pdr" sections

A MIPS-specific format used to describe stack frame layout
in debugging information.

Scheme support

GDB could work with an older version of Guile to debug
the interpreter and Scheme programs running in it.

set mips stack-arg-size
set mips saved-gpreg-size

Use "set mips abi" to control parameter passing for MIPS.

This release is the result of a team effort of many individuals who
have contributed to this project. This includes:

Adam Nemet, Alan Modra, Alfred M. Szmidt, Andreas Schwab, Andrew Cagney,
Andrew Stubbs, Anton Blanchard, Arthur Huillet, Bob Wilson, Brooks
Moses, Caroline Tice, Chris Dearman, Chris Smith, Claudio Fontana,
Corinna Vinschen, Daniel Jacobowitz, Denis Pilat, Eli Zaretskii, Fred
Fish, Gabriel Dos Reis, Gary Funck, H.J. Lu, Ilko Iliev, Jan Kratochvil,
Jerome Guitton, Jim Blandy, Joel Brobecker, Joseph Myers, Kazuhiro
Inaoka, Kevin Buettner, Ludovic CourtÃƒÅ¡s, Luis Machado, Maciej W.
Rozycki, Mark Kettenis, Mark Shinwell, Markus Deuling, Masaki Muranaka,
Maxim Grigoriev, Michael Snyder, Nathan Froyd, Nick Hudson, Nick
Roberts, Nigel Stephens, Paul Brook, Paul Gilliam, Paul Hilfinger, Pedro
Alves, Pierre Muller, Qinwei, Randolph Chung, Richard Sandiford, Steve
Ellcey, Thiago Jung Bauermann, Thiemo Seufer, Ulrich Weigand, Vladimir Prus.

--
Joel