X-Git-Url: https://repo.jachan.dev/binutils.git/blobdiff_plain/8b946797f7008a593d0bdc091ce780ac0ec386e9..68fc375edd9bafa5e40bda9b9a8ca6d5a7612c73:/gdb/NEWS diff --git a/gdb/NEWS b/gdb/NEWS index 18d03d7054..c6c3841c20 100644 --- a/gdb/NEWS +++ b/gdb/NEWS @@ -1,18 +1,436 @@ - What has changed since GDB-3.5? - (Organized release by release) + What has changed in GDB? + (Organized release by release) + +*** Changes since GDB-4.16: + +* New native configurations + +Alpha Linux alpha-*-linux* + +*** 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 + load + target remote :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: + +Remote debugging using the GDB-specific (`target remote') protocol now +supports the `load' command. This is only useful if you have some +other way of getting the stub to the target system, and you can put it +somewhere in memory where it won't get clobbered by the download. + +Filename completion now works. + +When run under emacs mode, the "info line" command now causes the +arrow to point to the line specified. Also, "info line" prints +addresses in symbolic form (as well as hex). + +All vxworks based targets now support a user settable option, called +vxworks-timeout. This option represents the number of seconds gdb +should wait for responses to rpc's. You might want to use this if +your vxworks target is, perhaps, a slow software simulator or happens +to be on the far side of a thin network line. + + * DEC alpha support + +This release contains support for using a DEC alpha as a GDB host for +cross debugging. Native alpha debugging is not supported yet. + *** Changes in GDB-4.9: -(This is a prototype to remind us of things that should be announced -in the next release...) + * Testsuite + +This is the first GDB release which is accompanied by a matching testsuite. +The testsuite requires installation of dejagnu, which should be available +via ftp from most sites that carry GNU software. + + * C++ demangling 'Cfront' style demangling has had its name changed to 'ARM' style, to -emphasize that it was written from the specifications in the Annotated -Reference Manual, not to be compatible with AT&T cfront. Despite disclaimers, -it still generated too much confusion with users attempting to use gdb with -AT&T cfront. +emphasize that it was written from the specifications in the C++ Annotated +Reference Manual, not necessarily to be compatible with AT&T cfront. Despite +disclaimers, it still generated too much confusion with users attempting to +use gdb with AT&T cfront. - * Simulators + * Simulators GDB now uses a standard remote interface to a simulator library. So far, the library contains simulators for the Zilog Z8001/2, the @@ -26,59 +444,20 @@ SH simulator sh-hitachi-hms or sh Z8000 simulator z8k-zilog-none or z8ksim IDT MIPS board over serial line mips-idt-ecoff - Cross-debugging to GO32 targets is supported. It requires a custom version of the i386-stub.c module which is integrated with the -GO32 memory extender. Msg follows: - - -Date: Tue, 16 Feb 93 02:34:20 EST -From: "Mark W. Eichin" -Message-Id: <9302160734.AA09302@tweedledumb.cygnus.com> -To: gnu@cygnus.com -Cc: ian@cygnus.com, gnu@cygnus.com, gumby@cygnus.com, gdb@cygnus.com -In-Reply-To: gnu@cygnus.com's message of Mon, 15 Feb 93 22:30:09 -0800 <9302160630.AA00786@cygnus.com> -Subject: GO32 debugging in devo/gdb - - SUB: GO32 debugging in devo/gdb - SUM: , gnu->eichin, ian, gnu, gumby, gdb - - My impression is that devo/gdb supports remote debugging of GO32 programs. - Is this true? - -Yes. I think that even the 4.7 release had everything needed. - - What does a user have to have in the GO32 environment in order to do this? - (My guess: our custom-modified GO32. Did we send the changes back to - DJ and did they ever get integrated into the standard GO32?) - -I asked DJ if he wanted the changes; at the time, he was very busy -having a daughter. He's back on the net now, I'll give him another -try. My changes are to GO32 1.07 and the entire source (and an -executable) are checked in to cvs; the current GO32 is 1.08, I haven't -tried updating the changes. +GO32 memory extender. - What does a user have to actually do in GO32 in order for this to work? - E.g. there seems to be no user-level documentation for this feature. + * New remote protocols -GO32 includes "go32.exe" and "debug32.exe"; my version is -"dser32.exe". With a serial link on com1 to the host, use the mode -command on the target to set the baud rate, then "dser32 a.out" and -start up gdb (configured -target go32), target remote /dev/ttya. -Shoudl just work from there. +MIPS remote debugging protocol. - I'm wondering if we can announce this as part of what's supported in - gdb-4.8. + * New source languages supported -The hard part is the extender itself -- it needs to be built with a -native 16-bit compiler (such as Turbo C with Turbo Assembler -- about -$300 in software, which I do own -- and the assembly code uses enough -high level features (like structs) that it isn't portable to other -assemblers.) We have no way to build it with any free tools. I think -we can ship (or at least make available) the executable for the DOS -side, I don't think Turbo C has any runtime restrictions. +This version includes preliminary support for Chill, a Pascal like language +used by telecommunications companies. Chill support is also being integrated +into the GNU compiler, but we don't know when it will be publically available. - _Mark_ *** Changes in GDB-4.8: