* NEWS: Update for --args.
[deliverable/binutils-gdb.git] / gdb / NEWS
index 1342190ae3b88f421a851592a691be76a45f14ec..7f874392f64e4310a5c01bce7214b1ca2c2c9e46 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -1,7 +1,350 @@
                What has changed in GDB?
             (Organized release by release)
 
-*** Changes since GDB-4.17:
+*** Changes since GDB 5.1:
+
+* New native configurations
+
+x86 OpenBSD                                    i[3456]86-*-openbsd*
+
+* Changes to command line processing
+
+The new `--args' feature can be used to specify command-line arguments
+for the inferior from gdb's command line.
+
+*** Changes in GDB 5.1:
+
+* New native configurations
+
+Alpha FreeBSD                                  alpha*-*-freebsd*
+x86 FreeBSD 3.x and 4.x                                i[3456]86*-freebsd[34]*
+MIPS Linux                                     mips*-*-linux*
+MIPS SGI Irix 6.x                              mips*-sgi-irix6*
+ia64 AIX                                       ia64-*-aix*
+s390 and s390x Linux                           {s390,s390x}-*-linux*
+
+* New targets
+
+Motorola 68HC11 and 68HC12                     m68hc11-elf
+CRIS                                           cris-axis
+UltraSparc running Linux                       sparc64-*-linux*
+
+* OBSOLETE configurations and files
+
+x86 FreeBSD before 2.2                         i[3456]86*-freebsd{1,2.[01]}*, 
+Harris/CXUX m88k                               m88*-harris-cxux*
+Most ns32k hosts and targets                   ns32k-*-mach3* ns32k-umax-*
+                                               ns32k-utek-sysv* ns32k-utek-*
+TI TMS320C80                                   tic80-*-*
+WDC 65816                                      w65-*-*
+Ultracomputer (29K) running Sym1               a29k-nyu-sym1 a29k-*-kern*
+PowerPC Solaris                                        powerpcle-*-solaris*
+PowerPC Windows NT                             powerpcle-*-cygwin32
+PowerPC Netware                                        powerpc-*-netware*
+SunOS 4.0.Xi on i386                           i[3456]86-*-sunos*
+Sony NEWS (68K) running NEWSOS 3.x             m68*-sony-sysv news
+ISI Optimum V (3.05) under 4.3bsd.             m68*-isi-*
+Apple Macintosh (MPW) host                     N/A
+
+stuff.c (Program to stuff files into a specially prepared space in kdb)
+kdb-start.c (Main loop for the standalone kernel debugger)
+
+Configurations that have been declared obsolete in this release have
+been commented out.  Unless there is activity to revive these
+configurations, the next release of GDB will have their sources
+permanently REMOVED.
+
+* REMOVED configurations and files
+
+Altos 3068                                     m68*-altos-*
+Convex                                         c1-*-*, c2-*-*
+Pyramid                                                pyramid-*-*
+ARM RISCix                                     arm-*-* (as host)
+Tahoe                                          tahoe-*-*
+ser-ocd.c                                      *-*-*
+
+* GDB has been converted to ISO C.
+
+GDB's source code has been converted to ISO C.  In particular, the
+sources are fully protoized, and rely on standard headers being
+present.
+
+* Other news:
+
+* "info symbol" works on platforms which use COFF, ECOFF, XCOFF, and NLM.
+
+* The MI enabled by default.
+
+The new machine oriented interface (MI) introduced in GDB 5.0 has been
+revised and enabled by default.  Packages which use GDB as a debugging
+engine behind a UI or another front end are encouraged to switch to
+using the GDB/MI interface, instead of the old annotations interface
+which is now deprecated.
+
+* Support for debugging Pascal programs.
+
+GDB now includes support for debugging Pascal programs.  The following
+main features are supported:
+
+    - Pascal-specific data types such as sets;
+
+    - automatic recognition of Pascal sources based on file-name
+      extension;
+
+    - Pascal-style display of data types, variables, and functions;
+
+    - a Pascal expression parser.
+
+However, some important features are not yet supported.
+
+    - Pascal string operations are not supported at all;
+
+    - there are some problems with boolean types;
+
+    - Pascal type hexadecimal constants are not supported
+      because they conflict with the internal variables format;
+
+    - support for Pascal objects and classes is not full yet;
+
+    - unlike Pascal, GDB is case-sensitive for symbol names.
+
+* Changes in completion.
+
+Commands such as `shell', `run' and `set args', which pass arguments
+to inferior programs, now complete on file names, similar to what
+users expect at the shell prompt.
+
+Commands which accept locations, such as `disassemble', `print',
+`breakpoint', `until', etc. now complete on filenames as well as
+program symbols.  Thus, if you type "break foob TAB", and the source
+files linked into the programs include `foobar.c', that file name will
+be one of the candidates for completion.  However, file names are not
+considered for completion after you typed a colon that delimits a file
+name from a name of a function in that file, as in "break foo.c:bar".
+
+`set demangle-style' completes on available demangling styles.
+
+* New platform-independent commands:
+
+It is now possible to define a post-hook for a command as well as a
+hook that runs before the command.  For more details, see the
+documentation of `hookpost' in the GDB manual.
+
+* Changes in GNU/Linux native debugging.
+
+Support for debugging multi-threaded programs has been completely
+revised for all platforms except m68k and sparc.  You can now debug as
+many threads as your system allows you to have.
+
+Attach/detach is supported for multi-threaded programs.
+
+Support for SSE registers was added for x86.  This doesn't work for
+multi-threaded programs though.
+
+* Changes in MIPS configurations.
+
+Multi-arch support is enabled for all MIPS configurations.
+
+GDB can now be built as native debugger on SGI Irix 6.x systems for
+debugging n32 executables.  (Debugging 64-bit executables is not yet
+supported.)
+
+* Unified support for hardware watchpoints in all x86 configurations.
+
+Most (if not all) native x86 configurations support hardware-assisted
+breakpoints and watchpoints in a unified manner.  This support
+implements debug register sharing between watchpoints, which allows to
+put a virtually infinite number of watchpoints on the same address,
+and also supports watching regions up to 16 bytes with several debug
+registers.
+
+The new maintenance command `maintenance show-debug-regs' toggles
+debugging print-outs in functions that insert, remove, and test
+watchpoints and hardware breakpoints.
+
+* Changes in the DJGPP native configuration.
+
+New command ``info dos sysinfo'' displays assorted information about
+the CPU, OS, memory, and DPMI server.
+
+New commands ``info dos gdt'', ``info dos ldt'', and ``info dos idt''
+display information about segment descriptors stored in GDT, LDT, and
+IDT.
+
+New commands ``info dos pde'' and ``info dos pte'' display entries
+from Page Directory and Page Tables (for now works with CWSDPMI only).
+New command ``info dos address-pte'' displays the Page Table entry for
+a given linear address.
+
+GDB can now pass command lines longer than 126 characters to the
+program being debugged (requires an update to the libdbg.a library
+which is part of the DJGPP development kit).
+
+DWARF2 debug info is now supported.
+
+It is now possible to `step' and `next' through calls to `longjmp'.
+
+* Changes in documentation.
+
+All GDB documentation was converted to GFDL, the GNU Free
+Documentation License.
+
+Tracepoints-related commands are now fully documented in the GDB
+manual.
+
+TUI, the Text-mode User Interface, is now documented in the manual.
+
+Tracepoints-related commands are now fully documented in the GDB
+manual.
+
+The "GDB Internals" manual now has an index.  It also includes
+documentation of `ui_out' functions, GDB coding standards, x86
+hardware watchpoints, and memory region attributes.
+
+* GDB's version number moved to ``version.in''
+
+The Makefile variable VERSION has been replaced by the file
+``version.in''.  People creating GDB distributions should update the
+contents of this file.
+
+* gdba.el deleted
+
+GUD support is now a standard part of the EMACS distribution.
+
+*** Changes in GDB 5.0:
+
+* Improved support for debugging FP programs on x86 targets
+
+Unified and much-improved support for debugging floating-point
+programs on all x86 targets.  In particular, ``info float'' now
+displays the FP registers in the same format on all x86 targets, with
+greater level of detail.
+
+* Improvements and bugfixes in hardware-assisted watchpoints
+
+It is now possible to watch array elements, struct members, and
+bitfields with hardware-assisted watchpoints.  Data-read watchpoints
+on x86 targets no longer erroneously trigger when the address is
+written.
+
+* Improvements in the native DJGPP version of GDB
+
+The distribution now includes all the scripts and auxiliary files
+necessary to build the native DJGPP version on MS-DOS/MS-Windows
+machines ``out of the box''.
+
+The DJGPP version can now debug programs that use signals.  It is
+possible to catch signals that happened in the debuggee, deliver
+signals to it, interrupt it with Ctrl-C, etc.  (Previously, a signal
+would kill the program being debugged.)  Programs that hook hardware
+interrupts (keyboard, timer, etc.) can also be debugged.
+
+It is now possible to debug DJGPP programs that redirect their
+standard handles or switch them to raw (as opposed to cooked) mode, or
+even close them.  The command ``run < foo > bar'' works as expected,
+and ``info terminal'' reports useful information about the debuggee's
+terminal, including raw/cooked mode, redirection, etc.
+
+The DJGPP version now uses termios functions for console I/O, which
+enables debugging graphics programs.  Interrupting GDB with Ctrl-C
+also works.
+
+DOS-style file names with drive letters are now fully supported by
+GDB.
+
+It is now possible to debug DJGPP programs that switch their working
+directory.  It is also possible to rerun the debuggee any number of
+times without restarting GDB; thus, you can use the same setup,
+breakpoints, etc. for many debugging sessions.
+
+* New native configurations
+
+ARM GNU/Linux                                  arm*-*-linux*
+PowerPC GNU/Linux                              powerpc-*-linux*
+
+* New targets
+
+Motorola MCore                                 mcore-*-*
+x86 VxWorks                                    i[3456]86-*-vxworks*
+PowerPC VxWorks                                        powerpc-*-vxworks*
+TI TMS320C80                                   tic80-*-*
+
+* OBSOLETE configurations
+
+Altos 3068                                     m68*-altos-*
+Convex                                         c1-*-*, c2-*-*
+Pyramid                                                pyramid-*-*
+ARM RISCix                                     arm-*-* (as host)
+Tahoe                                          tahoe-*-*
+
+Configurations that have been declared obsolete will be commented out,
+but the code will be left in place.  If there is no activity to revive
+these configurations before the next release of GDB, the sources will
+be permanently REMOVED.
+
+* Gould support removed
+
+Support for the Gould PowerNode and NP1 has been removed.
+
+* New features for SVR4
+
+On SVR4 native platforms (such as Solaris), if you attach to a process
+without first loading a symbol file, GDB will now attempt to locate and
+load symbols from the running process's executable file.
+
+* Many C++ enhancements
+
+C++ support has been greatly improved. Overload resolution now works properly
+in almost all cases. RTTI support is on the way.
+
+* Remote targets can connect to a sub-program
+
+A popen(3) style serial-device has been added.  This device starts a
+sub-process (such as a stand-alone simulator) and then communicates
+with that.  The sub-program to run is specified using the syntax
+``|<program> <args>'' vis:
+
+       (gdb) set remotedebug 1
+       (gdb) target extended-remote |mn10300-elf-sim program-args
+
+* MIPS 64 remote protocol
+
+A long standing bug in the mips64 remote protocol where by GDB
+expected certain 32 bit registers (ex SR) to be transfered as 32
+instead of 64 bits has been fixed.
+
+The command ``set remote-mips64-transfers-32bit-regs on'' has been
+added to provide backward compatibility with older versions of GDB.
+
+* ``set remotebinarydownload'' replaced by ``set remote X-packet''
+
+The command ``set remotebinarydownload'' command has been replaced by
+``set remote X-packet''.  Other commands in ``set remote'' family
+include ``set remote P-packet''.
+
+* Breakpoint commands accept ranges.
+
+The breakpoint commands ``enable'', ``disable'', and ``delete'' now
+accept a range of breakpoints, e.g. ``5-7''.  The tracepoint command
+``tracepoint passcount'' also accepts a range of tracepoints.
+
+* ``apropos'' command added.
+
+The ``apropos'' command searches through command names and
+documentation strings, printing out matches, making it much easier to
+try to find a command that does what you are looking for.
+
+* New MI interface
+
+A new machine oriented interface (MI) has been added to GDB.  This
+interface is designed for debug environments running GDB as a separate
+process.  This is part of the long term libGDB project.  See the
+"GDB/MI" chapter of the GDB manual for further information.  It can be
+enabled by configuring with:
+
+       .../configure --enable-gdbmi
+
+*** Changes in GDB-4.18:
 
 * New native configurations
 
@@ -12,13 +355,43 @@ M68K Linux                                 m68*-*-linux*
 * New targets
 
 Fujitsu FR30                                   fr30-*-elf*
+Intel StrongARM                                        strongarm-*-*
 Mitsubishi D30V                                        d30v-*-*
 
+* OBSOLETE configurations
+
+Gould PowerNode, NP1                           np1-*-*, pn-*-*
+
+Configurations that have been declared obsolete will be commented out,
+but the code will be left in place.  If there is no activity to revive
+these configurations before the next release of GDB, the sources will
+be permanently REMOVED.
+
+* ANSI/ISO C
+
+As a compatibility experiment, GDB's source files buildsym.h and
+buildsym.c have been converted to pure standard C, no longer
+containing any K&R compatibility code.  We believe that all systems in
+use today either come with a standard C compiler, or have a GCC port
+available.  If this is not true, please report the affected
+configuration to bug-gdb@gnu.org immediately.  See the README file for
+information about getting a standard C compiler if you don't have one
+already.
+
 * Readline 2.2
 
 GDB now uses readline 2.2.
 
-** The PowerPC and RS6000 targets now have a `set processor' command.
+* set extension-language
+
+You can now control the mapping between filename extensions and source
+languages by using the `set extension-language' command.  For instance,
+you can ask GDB to treat .c files as C++ by saying
+       set extension-language .c c++
+The command `info extensions' lists all of the recognized extensions
+and their associated languages.
+
+* Setting processor type for PowerPC and RS/6000
 
 When GDB is configured for a powerpc*-*-* or an rs6000*-*-* target,
 you can use the `set processor' command to specify what variant of the
@@ -46,13 +419,13 @@ special-purpose processor registers.  Since almost all the affected
 registers are inaccessible to user-level programs, this command is
 only useful for remote debugging in its present form.
 
-* HP-UX Support
+* HP-UX support
 
-Thanks to a major code donation from HP, GDB now has much more
-extensive support for HP-UX.  Added features include shared library
-support, kernel threads and hardware watchpoints for 11.00, support
-for HP's ANSI C and C++ compilers, and compatibility mode for xdb
-commands.
+Thanks to a major code donation from Hewlett-Packard, GDB now has much
+more extensive support for HP-UX.  Added features include shared
+library support, kernel threads and hardware watchpoints for 11.00,
+support for HP's ANSI C and C++ compilers, and a compatibility mode
+for xdb and dbx commands.
 
 * Catchpoints
 
@@ -60,7 +433,11 @@ HP's donation includes the new concept of catchpoints, which is a
 generalization of the old catch command.  On HP-UX, it is now possible
 to catch exec, fork, and vfork, as well as library loading.
 
-* Debugging Across Forks
+This means that the existing catch command has changed; its first
+argument now specifies the type of catch to be set up.  See the
+output of "help catch" for a list of catchpoint types.
+
+* Debugging across forks
 
 On HP-UX, you can choose which process to debug when a fork() happens
 in the inferior.
@@ -68,23 +445,61 @@ in the inferior.
 * TUI
 
 HP has donated a curses-based terminal user interface (TUI).  To get
-it, build with --enable-tui.
+it, build with --enable-tui.  Although this can be enabled for any
+configuration, at present it only works for native HP debugging.
 
-* GDB Remote protocol
+* GDB remote protocol additions
 
 A new protocol packet 'X' that writes binary data is now available.
 Default behavior is to try 'X', then drop back to 'M' if the stub
 fails to respond.  The settable variable `remotebinarydownload'
 allows explicit control over the use of 'X'.
 
-For 64 bit targets, the memory packets ("M" and "m") can now contain a
-full 64 bit address.  The class-obscure gdb command:
-       set targetaddresssize 32
-can be used to revert to the old behavour.  For existing remote stubs
-the change should not be noticed as the additional address information
+For 64-bit targets, the memory packets ('M' and 'm') can now contain a
+full 64-bit address.  The command
+
+       set remoteaddresssize 32
+
+can be used to revert to the old behaviour.  For existing remote stubs
+the change should not be noticed, as the additional address information
 will be discarded.
 
-* Changes to particular targets
+In order to assist in debugging stubs, you may use the maintenance
+command `packet' to send any text string to the stub.  For instance,
+
+       maint packet heythere
+
+sends the packet "$heythere#<checksum>".  Note that it is very easy to
+disrupt a debugging session by sending the wrong packet at the wrong
+time.
+
+The compare-sections command allows you to compare section data on the
+target to what is in the executable file without uploading or
+downloading, by comparing CRC checksums.
+
+* Tracing can collect general expressions
+
+You may now collect general expressions at tracepoints.  This requires
+further additions to the target-side stub; see tracepoint.c and
+doc/agentexpr.texi for further details.
+
+* mask-address variable for Mips
+
+For Mips targets, you may control the zeroing of the upper 32 bits of
+a 64-bit address by entering `set mask-address on'.  This is mainly
+of interest to users of embedded R4xxx and R5xxx processors.
+
+* Higher serial baud rates
+
+GDB's serial code now allows you to specify baud rates 57600, 115200,
+230400, and 460800 baud.  (Note that your host system may not be able
+to achieve all of these rates.)
+
+* i960 simulator
+
+The i960 configuration now includes an initial implementation of a
+builtin simulator, contributed by Jim Wilson.
+
 
 *** Changes in GDB-4.17:
 
@@ -127,13 +542,11 @@ All configurations can now understand and use the DWARF 2 debugging
 format.  The choice is automatic, if the symbol file contains DWARF 2
 information.
 
-start-sanitize-java
 * Java frontend
 
 GDB now includes basic Java language support.  This support is
 only useful with Java compilers that produce native machine code.
 
-end-sanitize-java
 * solib-absolute-prefix and solib-search-path
 
 For SunOS and SVR4 shared libraries, you may now set the prefix for
This page took 0.029364 seconds and 4 git commands to generate.