]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - gdb/NEWS
* config/sh/tm-sh.h (BELIEVE_PCC_PROMOTION): Define, so that
[thirdparty/binutils-gdb.git] / gdb / NEWS
index 722f8a475b8c56195325bd0bbd269255368c9b80..a1afb60ee922597bff5d32929a28ffcf927eea66 100644 (file)
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -1,7 +1,597 @@
-               What has changed since GDB-3.5?
-               (Organized release by release)
+               What has changed in GDB?
+            (Organized release by release)
 
-*** Changes in GDB-???:
+*** Changes since GDB-4.17:
+
+* New native configurations
+
+HP-UX 10.20                                    hppa*-*-hpux10.20
+HP-UX 11.x                                     hppa*-*-hpux11.0*
+M68K Linux                                     m68*-*-linux*
+
+* New targets
+
+Fujitsu FR30                                   fr30-*-elf*
+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.
+
+* Readline 2.2
+
+GDB now uses readline 2.2.
+
+** The PowerPC and RS6000 targets now have a `set processor' command.
+
+When GDB is configured for a powerpc*-*-* or an rs6000*-*-* target,
+you can use the `set processor' command to specify what variant of the
+PowerPC family you are debugging.  The command
+
+       set processor NAME
+
+sets the PowerPC/RS6000 variant to NAME.  GDB knows about the
+following PowerPC and RS6000 variants:
+
+  ppc-uisa  PowerPC UISA - a PPC processor as viewed by user-level code
+  rs6000    IBM RS6000 ("POWER") architecture, user-level view
+  403       IBM PowerPC 403
+  403GC     IBM PowerPC 403GC
+  505       Motorola PowerPC 505
+  860       Motorola PowerPC 860 or 850
+  601       Motorola PowerPC 601
+  602       Motorola PowerPC 602
+  603       Motorola/IBM PowerPC 603 or 603e
+  604       Motorola PowerPC 604 or 604e
+  750       Motorola/IBM PowerPC 750 or 750
+
+At the moment, this command just tells GDB what to name the
+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
+
+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.
+
+* Catchpoints
+
+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
+
+On HP-UX, you can choose which process to debug when a fork() happens
+in the inferior.
+
+* TUI
+
+HP has donated a curses-based terminal user interface (TUI).  To get
+it, build with --enable-tui.
+
+* GDB Remote protocol
+
+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
+will be discarded.
+
+* Changes to particular targets
+
+*** Changes in GDB-4.17:
+
+* New native configurations
+
+Alpha GNU/Linux                                        alpha*-*-linux*
+Unixware 2.x                                   i[3456]86-unixware2*
+Irix 6.x                                       mips*-sgi-irix6*
+PowerPC GNU/Linux                              powerpc-*-linux*
+PowerPC Solaris                                        powerpcle-*-solaris*
+Sparc GNU/Linux                                        sparc-*-linux*
+Motorola sysV68 R3V7.1                         m68k-motorola-sysv
+
+* New targets
+
+Argonaut Risc Chip (ARC)                       arc-*-*
+Hitachi H8/300S                                        h8300*-*-*
+Matsushita MN10200 w/simulator                 mn10200-*-*
+Matsushita MN10300 w/simulator                 mn10300-*-*
+MIPS NEC VR4100                                        mips64*vr4100*{,el}-*-elf*
+MIPS NEC VR5000                                        mips64*vr5000*{,el}-*-elf*
+MIPS Toshiba TX39                              mips64*tx39*{,el}-*-elf*
+Mitsubishi D10V w/simulator                    d10v-*-*
+Mitsubishi M32R/D w/simulator                  m32r-*-elf*
+Tsqware Sparclet                               sparclet-*-*
+NEC V850 w/simulator                           v850-*-*
+
+* New debugging protocols
+
+ARM with RDI protocol                          arm*-*-*
+M68K with dBUG monitor                         m68*-*-{aout,coff,elf}
+DDB and LSI variants of PMON protocol          mips*-*-*
+PowerPC with DINK32 monitor                    powerpc{,le}-*-eabi
+PowerPC with SDS protocol                      powerpc{,le}-*-eabi
+Macraigor OCD (Wiggler) devices                        powerpc{,le}-*-eabi
+
+* DWARF 2
+
+All configurations can now understand and use the DWARF 2 debugging
+format.  The choice is automatic, if the symbol file contains DWARF 2
+information.
+
+* Java frontend
+
+GDB now includes basic Java language support.  This support is
+only useful with Java compilers that produce native machine code.
+
+* solib-absolute-prefix and solib-search-path
+
+For SunOS and SVR4 shared libraries, you may now set the prefix for
+loading absolute shared library symbol files, and the search path for
+locating non-absolute shared library symbol files.
+
+* Live range splitting
+
+GDB can now effectively debug code for which GCC has performed live
+range splitting as part of its optimization.  See gdb/doc/LRS for
+more details on the expected format of the stabs information.
+
+* Hurd support
+
+GDB's support for the GNU Hurd, including thread debugging, has been
+updated to work with current versions of the Hurd.
+
+* ARM Thumb support
+
+GDB's ARM target configuration now handles the ARM7T (Thumb) 16-bit
+instruction set.  ARM GDB automatically detects when Thumb
+instructions are in use, and adjusts disassembly and backtracing
+accordingly.
+
+* MIPS16 support
+
+GDB's MIPS target configurations now handle the MIP16 16-bit
+instruction set.
+
+* Overlay support
+
+GDB now includes support for overlays; if an executable has been
+linked such that multiple sections are based at the same address, GDB
+will decide which section to use for symbolic info.  You can choose to
+control the decision manually, using overlay commands, or implement
+additional target-side support and use "overlay load-target" to bring
+in the overlay mapping.  Do "help overlay" for more detail.
+
+* info symbol
+
+The command "info symbol <address>" displays information about
+the symbol at the specified address.
+
+* Trace support
+
+The standard remote protocol now includes an extension that allows
+asynchronous collection and display of trace data.  This requires
+extensive support in the target-side debugging stub.  Tracing mode
+includes a new interaction mode in GDB and new commands: see the
+file tracepoint.c for more details.
+
+* MIPS simulator
+
+Configurations for embedded MIPS now include a simulator contributed
+by Cygnus Solutions.  The simulator supports the instruction sets
+of most MIPS variants.
+
+* Sparc simulator
+
+Sparc configurations may now include the ERC32 simulator contributed
+by the European Space Agency.  The simulator is not built into
+Sparc targets by default; configure with --enable-sim to include it.
+
+* set architecture
+
+For target configurations that may include multiple variants of a
+basic architecture (such as MIPS and SH), you may now set the
+architecture explicitly.  "set arch" sets, "info arch" lists
+the possible architectures.
+
+*** Changes in GDB-4.16:
+
+* New native configurations
+
+Windows 95, x86 Windows NT                     i[345]86-*-cygwin32
+M68K NetBSD                                    m68k-*-netbsd*
+PowerPC AIX 4.x                                        powerpc-*-aix*
+PowerPC MacOS                                  powerpc-*-macos*
+PowerPC Windows NT                             powerpcle-*-cygwin32
+RS/6000 AIX 4.x                                        rs6000-*-aix4*
+
+* New targets
+
+ARM with RDP protocol                          arm-*-*
+I960 with MON960                               i960-*-coff
+MIPS VxWorks                                   mips*-*-vxworks*
+MIPS VR4300 with PMON                          mips64*vr4300{,el}-*-elf*
+PowerPC with PPCBUG monitor                    powerpc{,le}-*-eabi*
+Hitachi SH3                                    sh-*-*
+Matra Sparclet                                 sparclet-*-*
+
+* PowerPC simulator
+
+The powerpc-eabi configuration now includes the PSIM simulator,
+contributed by Andrew Cagney, with assistance from Mike Meissner.
+PSIM is a very elaborate model of the PowerPC, including not only
+basic instruction set execution, but also details of execution unit
+performance and I/O hardware.  See sim/ppc/README for more details.
+
+* Solaris 2.5
+
+GDB now works with Solaris 2.5.
+
+* Windows 95/NT native
+
+GDB will now work as a native debugger on Windows 95 and Windows NT.
+To build it from source, you must use the "gnu-win32" environment,
+which uses a DLL to emulate enough of Unix to run the GNU tools.
+Further information, binaries, and sources are available at
+ftp.cygnus.com, under pub/gnu-win32.
+
+* dont-repeat command
+
+If a user-defined command includes the command `dont-repeat', then the
+command will not be repeated if the user just types return.  This is
+useful if the command is time-consuming to run, so that accidental
+extra keystrokes don't run the same command many times.
+
+* Send break instead of ^C
+
+The standard remote protocol now includes an option to send a break
+rather than a ^C to the target in order to interrupt it.  By default,
+GDB will send ^C; to send a break, set the variable `remotebreak' to 1.
+
+* Remote protocol timeout
+
+The standard remote protocol includes a new variable `remotetimeout'
+that allows you to set the number of seconds before GDB gives up trying
+to read from the target.  The default value is 2.
+
+* Automatic tracking of dynamic object loading (HPUX and Solaris only)
+
+By default GDB will automatically keep track of objects as they are
+loaded and unloaded by the dynamic linker.  By using the command `set
+stop-on-solib-events 1' you can arrange for GDB to stop the inferior
+when shared library events occur, thus allowing you to set breakpoints
+in shared libraries which are explicitly loaded by the inferior.
+
+Note this feature does not work on hpux8.  On hpux9 you must link
+/usr/lib/end.o into your program.  This feature should work
+automatically on hpux10.
+
+* Irix 5.x hardware watchpoint support
+
+Irix 5 configurations now support the use of hardware watchpoints.
+
+* Mips protocol "SYN garbage limit"
+
+When debugging a Mips target using the `target mips' protocol, you
+may set the number of characters that GDB will ignore by setting
+the `syn-garbage-limit'.  A value of -1 means that GDB will ignore
+every character.  The default value is 1050.
+
+* Recording and replaying remote debug sessions
+
+If you set `remotelogfile' to the name of a file, gdb will write to it
+a recording of a remote debug session.  This recording may then be
+replayed back to gdb using "gdbreplay".  See gdbserver/README for
+details.  This is useful when you have a problem with GDB while doing
+remote debugging; you can make a recording of the session and send it
+to someone else, who can then recreate the problem.
+
+* Speedups for remote debugging
+
+GDB includes speedups for downloading and stepping MIPS systems using
+the IDT monitor, fast downloads to the Hitachi SH E7000 emulator,
+and more efficient S-record downloading.
+
+* Memory use reductions and statistics collection
+
+GDB now uses less memory and reports statistics about memory usage.
+Try the `maint print statistics' command, for example.
+
+*** Changes in GDB-4.15:
+
+* Psymtabs for XCOFF
+
+The symbol reader for AIX GDB now uses partial symbol tables.  This
+can greatly improve startup time, especially for large executables.
+
+* Remote targets use caching
+
+Remote targets now use a data cache to speed up communication with the
+remote side.  The data cache could lead to incorrect results because
+it doesn't know about volatile variables, thus making it impossible to
+debug targets which use memory mapped I/O devices. `set remotecache
+off' turns the the data cache off.
+
+* Remote targets may have threads
+
+The standard remote protocol now includes support for multiple threads
+in the target system, using new protocol commands 'H' and 'T'.  See
+gdb/remote.c for details.
+
+* NetROM support
+
+If GDB is configured with `--enable-netrom', then it will include
+support for the NetROM ROM emulator from XLNT Designs.  The NetROM
+acts as though it is a bank of ROM on the target board, but you can
+write into it over the network.  GDB's support consists only of
+support for fast loading into the emulated ROM; to debug, you must use
+another protocol, such as standard remote protocol.  The usual
+sequence is something like
+
+       target nrom <netrom-hostname>
+       load <prog>
+       target remote <netrom-hostname>:1235
+
+* Macintosh host
+
+GDB now includes support for the Apple Macintosh, as a host only.  It
+may be run as either an MPW tool or as a standalone application, and
+it can debug through the serial port.  All the usual GDB commands are
+available, but to the target command, you must supply "serial" as the
+device type instead of "/dev/ttyXX".  See mpw-README in the main
+directory for more information on how to build.  The MPW configuration
+scripts */mpw-config.in support only a few targets, and only the
+mips-idt-ecoff target has been tested.
+
+* Autoconf
+
+GDB configuration now uses autoconf.  This is not user-visible,
+but does simplify configuration and building.
+
+* hpux10
+
+GDB now supports hpux10.
+
+*** Changes in GDB-4.14:
+
+* New native configurations
+
+x86 FreeBSD                                    i[345]86-*-freebsd
+x86 NetBSD                                     i[345]86-*-netbsd
+NS32k NetBSD                                   ns32k-*-netbsd
+Sparc NetBSD                                   sparc-*-netbsd
+
+* New targets
+
+A29K VxWorks                                   a29k-*-vxworks
+HP PA PRO embedded (WinBond W89K & Oki OP50N)  hppa*-*-pro*
+CPU32 EST-300 emulator                         m68*-*-est*
+PowerPC ELF                                    powerpc-*-elf
+WDC 65816                                      w65-*-*
+
+* Alpha OSF/1 support for procfs
+
+GDB now supports procfs under OSF/1-2.x and higher, which makes it
+possible to attach to running processes.  As the mounting of the /proc
+filesystem is optional on the Alpha, GDB automatically determines
+the availability of /proc during startup.  This can lead to problems
+if /proc is unmounted after GDB has been started.
+
+* Arguments to user-defined commands
+
+User commands may accept up to 10 arguments separated by whitespace.
+Arguments are accessed within the user command via $arg0..$arg9.  A
+trivial example:
+define adder
+  print $arg0 + $arg1 + $arg2
+
+To execute the command use:
+adder 1 2 3
+
+Defines the command "adder" which prints the sum of its three arguments.
+Note the arguments are text substitutions, so they may reference variables,
+use complex expressions, or even perform inferior function calls.
+
+* New `if' and `while' commands
+
+This makes it possible to write more sophisticated user-defined
+commands.  Both commands take a single argument, which is the
+expression to evaluate, and must be followed by the commands to
+execute, one per line, if the expression is nonzero, the list being
+terminated by the word `end'.  The `if' command list may include an
+`else' word, which causes the following commands to be executed only
+if the expression is zero.
+
+* Fortran source language mode
+
+GDB now includes partial support for Fortran 77.  It will recognize
+Fortran programs and can evaluate a subset of Fortran expressions, but
+variables and functions may not be handled correctly.  GDB will work
+with G77, but does not yet know much about symbols emitted by other
+Fortran compilers.
+
+* Better HPUX support
+
+Most debugging facilities now work on dynamic executables for HPPAs
+running hpux9 or later.  You can attach to running dynamically linked
+processes, but by default the dynamic libraries will be read-only, so
+for instance you won't be able to put breakpoints in them.  To change
+that behavior do the following before running the program:
+
+       adb -w a.out
+       __dld_flags?W 0x5
+       control-d
+
+This will cause the libraries to be mapped private and read-write.
+To revert to the normal behavior, do this:
+
+       adb -w a.out
+       __dld_flags?W 0x4
+       control-d
+
+You cannot set breakpoints or examine data in the library until after
+the library is loaded if the function/data symbols do not have
+external linkage.
+
+GDB can now also read debug symbols produced by the HP C compiler on
+HPPAs (sorry, no C++, Fortran or 68k support).
+
+* Target byte order now dynamically selectable
+
+You can choose which byte order to use with a target system, via the
+commands "set endian big" and "set endian little", and you can see the
+current setting by using "show endian".  You can also give the command
+"set endian auto", in which case GDB will use the byte order
+associated with the executable.  Currently, only embedded MIPS
+configurations support dynamic selection of target byte order.
+
+* New DOS host serial code
+
+This version uses DPMI interrupts to handle buffered I/O, so you
+no longer need to run asynctsr when debugging boards connected to
+a PC's serial port.
+
+*** Changes in GDB-4.13:
+
+* New "complete" command
+
+This lists all the possible completions for the rest of the line, if it
+were to be given as a command itself.  This is intended for use by emacs.
+
+* Trailing space optional in prompt
+
+"set prompt" no longer adds a space for you after the prompt you set.  This
+allows you to set a prompt which ends in a space or one that does not.
+
+* Breakpoint hit counts
+
+"info break" now displays a count of the number of times the breakpoint
+has been hit.  This is especially useful in conjunction with "ignore"; you
+can ignore a large number of breakpoint hits, look at the breakpoint info
+to see how many times the breakpoint was hit, then run again, ignoring one
+less than that number, and this will get you quickly to the last hit of
+that breakpoint.
+
+* Ability to stop printing at NULL character
+
+"set print null-stop" will cause GDB to stop printing the characters of
+an array when the first NULL is encountered.  This is useful when large
+arrays actually contain only short strings.
+
+* Shared library breakpoints
+
+In SunOS 4.x, SVR4, and Alpha OSF/1 configurations, you can now set
+breakpoints in shared libraries before the executable is run.
+
+* Hardware watchpoints
+
+There is a new hardware breakpoint for the watch command for sparclite
+targets.  See gdb/sparclite/hw_breakpoint.note.
+
+Hardware watchpoints are also now supported under Linux.
+* Annotations
+
+Annotations have been added.  These are for use with graphical interfaces,
+and are still experimental.  Currently only gdba.el uses these.
+
+* Improved Irix 5 support
+
+GDB now works properly with Irix 5.2.
+
+* Improved HPPA support
+
+GDB now works properly with the latest GCC and GAS.
+
+* New native configurations
+
+Sequent PTX4                           i[34]86-sequent-ptx4
+HPPA running OSF/1                     hppa*-*-osf*
+Atari TT running SVR4                  m68*-*-sysv4*
+RS/6000 LynxOS                         rs6000-*-lynxos*
+
+* New targets
+
+OS/9000                                        i[34]86-*-os9k
+MIPS R4000                             mips64*{,el}-*-{ecoff,elf}
+Sparc64                                        sparc64-*-*
+
+* Hitachi SH7000 and E7000-PC ICE support
+
+There is now support for communicating with the Hitachi E7000-PC ICE.
+This is available automatically when GDB is configured for the SH.
+
+* Fixes
+
+As usual, a variety of small fixes and improvements, both generic
+and configuration-specific.  See the ChangeLog for more detail.
+
+*** Changes in GDB-4.12:
+
+* Irix 5 is now supported
+
+* HPPA support
+
+GDB-4.12 on the HPPA has a number of changes which make it unable
+to debug the output from the currently released versions of GCC and
+GAS (GCC 2.5.8 and GAS-2.2 or PAGAS-1.36).  Until the next major release
+of GCC and GAS, versions of these tools designed to work with GDB-4.12
+can be retrieved via anonymous ftp from jaguar.cs.utah.edu:/dist.
+
+
+*** Changes in GDB-4.11:
+
+* User visible changes:
+
+* Remote Debugging
+
+The "set remotedebug" option is now consistent between the mips remote
+target, remote targets using the gdb-specific protocol, UDI (AMD's
+debug protocol for the 29k) and the 88k bug monitor.  It is now an
+integer specifying a debug level (normally 0 or 1, but 2 means more
+debugging info for the mips target).
+
+* DEC Alpha native support
+
+GDB now works on the DEC Alpha.  GCC 2.4.5 does not produce usable
+debug info, but GDB works fairly well with the DEC compiler and should
+work with a future GCC release.  See the README file for a few
+Alpha-specific notes.
+
+* Preliminary thread implementation
+
+GDB now has preliminary thread support for both SGI/Irix and LynxOS.
+
+* LynxOS native and target support for 386
+
+This release has been hosted on LynxOS 2.2, and also can be configured
+to remotely debug programs running under LynxOS (see gdb/gdbserver/README
+for details).
+
+* Improvements in C++ mangling/demangling.
+
+This release has much better g++ debugging, specifically in name 
+mangling/demangling, virtual function calls, print virtual table,
+call methods, ...etc.
+
+*** Changes in GDB-4.10:
 
  * User visible changes: