From: PAUL GILLIAM <pgilliam@us.ibm.com>
To: gdb@sources.redhat.com
Subject: Re: GDB paper accepted for GCC summit
Date: Tue, 11 Apr 2006 09:01:00 -0000 [thread overview]
Message-ID: <1144701143.2660.11.camel@dufur.beaverton.ibm.com> (raw)
In-Reply-To: <1142633147.21920.400.camel@dufur.beaverton.ibm.com>
Here is stuff about new or improved "user-level" features I gleaned from
NEWS. I would welcome any comments.
-------- >6.4 --------
New Features:
Checkpoints
This facility allows the user to create a checkpoint, continue
debugging, and then 'backup' to the point where the checkpoint
was taken. More that one checkpoint can be made and commands
have been added to manage them.
Improved Features:
fork
Previously, the user had to decide which process should continue
to be debugged after a fork: the parent or the child. The one
not debugged would run unhindered to completion. Now it is
possible to debug both processes without the kludge of starting
a second GDB.
Convenience Variables
A number of improvements where made for convenience variables:
* A new command was added: "init-if-undefined": this is useful
for user defined functions that need to save state.
* In general, convenience variables are no longer reset by a
symbol-file command.
Windows Host Support
GDB now builds as a cross debugger hosted on i686-mingw32,
including native console support, and remote communications
using either network sockets or serial ports.
Removed Features:
ARM rdi-share module
Netware NLM Debug Server
-------- 6.4 --------
New Features:
BSD user-level threads support
User level thread libraries are now supported for freeBSD and
openBSD. Kernel thread libraries are not yet supported.
VAX floating point support
Support was added for the not-quite-IEEE VAX F and D floating
point formats.
Improved Features:
User-defined command support
A new convenience variable, $argc, has been added so that a user
defined function can know how man arguments were given when it
is invoked.
Displaying Arrays
When an array is displayed, its values are displayed without
reference to their index in the array. The new 'set print
array-indexes" command my be used so that index values are
included.
Removed Features:
-------- 6.3 --------
New Features:
"-l" command line option
GDB now accepts -l followed by a number to set the timeout for
remote debugging.
Support for GCC -feliminate-dwarf2-dups
GDB now supports a more compact representation of DWARF-2 debug
information using DW_FORM_ref_addr references. These are
produced by GCC with the option -feliminate-dwarf2-dups and also
by some proprietary compilers. With GCC, you must use GCC 3.3.4
or later to use -feliminate-dwarf2-dups.
Internationalization
When supported by the host system, GDB will be built with
internationalization (libintl). The task of marking up the
sources is continued, we're looking forward to our first
translation.
Ada
Initial support for debugging programs compiled with the GNAT
implementation of the Ada programming language has been
integrated into GDB. In this release, support is limited to
expression evaluation.
Improved Features:
Remote Protocol
GDB's remote protocol now includes support for the 'p' packet.
This packet is used to fetch individual registers from a remote
inferior.
Removed Features:
-------- 6.2.1 --------
This release fixed a couple of near 'show stoppers' on the MIPS and VAX
architectures.
-------- 6.2 --------
New Features:
Support for the BSD Kernel Data Access Library (libkvm) interface.
Using 'target kvm', it is now possible to debug kernel core
dumps and live kernel memory images on various BSD flavored
platforms. Currently, the following native-only configurations
are supported: FreeBSD/amd64, FreeBSD/i386, NetBSD/i386,
NetBSD/m68k, NetBSD/sparc, OpenBSD/amd64, OpenBSD/i386,
OpenBSD/m68k, and OpenBSD/sparc.
Cygwin support for DWARF 2.
Improved Features:
Threads
Support for NPTL threads was enhanced to work better with target
programs that rapidly create and delete threads.
Removed Features:
Command line options "-async" and "-noasync", which supported the
broken "no acync" feature, where removed, effectively removing the
feature.
-------- 6.1.1 --------
This was primarily a maintenance release to fix several built problems.
New Features:
Improved Features:
Text-mode User Interface
The TUI (text-mode user interface) is now build by default.
This is a curses based interface that provides a kind of
primitive 'GUI' and can be activated by using the -i=tui command
line option to GDB or by running the separate "gdbtui" program.
See the manual for more info.
Removed Features:
-------- 6.1 --------
New Features:
Pending Breakpoints
Support was added to allow setting breakpoints in shared
libraries that have not yet been loaded. If the 'breakpoint
pending' option is set to auto, the user is asked if a the
breakpoint should be made pending on a future shared-library
load. When the breakpoint symbol is resolved, the pending
breakpoint is removed and one or more regular breakpoints are
created. Pending breakpoints are very useful for GCJ Java
debugging.
Improved Features:
New C++ Demangler
A new demangler was added that does a better job on mangled
names generated by G++. The new demangler also runs faster,
helping GDB to start up faster on large C++ programs.
DWARF 2 Location Expressions
Support was extended to support function arguments and frame
bases. Formally, these would cause GDB to crash.
C++ nested types and namespaces
Support for these was improved, especially for users of DWARF 2.
Removed Features:
-------- 6.0 --------
New Features:
Objective-C
Support for debugging programs written in the Objective-C
language has been integrated into GDB.
Thread local storage (TLS)
Now supports the GNU/Linux implementation of per-thread
variables.
Dwarf 2 location expressions
These allow a compiler to more completely describe where
variables are located, in memory and/or registers, even when
optimization is used. Preliminary support was a added
Improved Features:
Remote Protocol
Extended to support hosted file I/O. This is where the remote
target can make use of the file system that GDB can access.
Threads
GDB now supports the new NPTL threads as well as the older
LinuxThreads library.
Removed Features:
prev parent reply other threads:[~2006-04-10 21:34 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-03-18 11:13 PAUL GILLIAM
2006-03-19 17:05 ` Eli Zaretskii
2006-03-30 0:32 ` PAUL GILLIAM
2006-03-30 1:41 ` Randolph Chung
2006-03-30 4:13 ` Daniel Jacobowitz
2006-03-30 22:42 ` Mark Kettenis
2006-03-30 1:36 ` GDB paper for GCC summit: New Commands PAUL GILLIAM
2006-03-30 4:30 ` Joel Brobecker
2006-04-01 13:21 ` Eli Zaretskii
2006-04-10 22:27 ` GDB paper at GCC summit: user-level features PAUL GILLIAM
2006-04-11 9:01 ` PAUL GILLIAM [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1144701143.2660.11.camel@dufur.beaverton.ibm.com \
--to=pgilliam@us.ibm.com \
--cc=gdb@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox