1		What has changed in GDB?
2	     (Organized release by release)
3
4*** Changes in GDB 6.2.1:
5
6* Improved i386 prologue analyzer
7
8The i386 prologue analyzer was improved to deal better with the
9prologues generated by GCC 3.3 and later.  As a result GDB should
10produce better backtraces for code without DWARF Call Frame Info.
11
12* MIPS `break main; run' gave an heuristic-fence-post warning
13
14When attempting to run even a simple program, a warning about
15heuristic-fence-post being hit would be reported.  This problem has
16been fixed.
17
18* MIPS IRIX 'long double' crashed GDB
19
20When examining a long double variable, GDB would get a segmentation
21fault.  The crash has been fixed (but GDB 6.2 cannot correctly examine
22IRIX long double values).
23
24* VAX and "next"
25
26A bug in the VAX stack code was causing problems with the "next"
27command.  This problem has been fixed.
28
29*** Changes in GDB 6.2:
30
31* Fix for ``many threads''
32
33On GNU/Linux systems that use the NPTL threads library, a program
34rapidly creating and deleting threads would confuse GDB leading to the
35error message:
36
37	ptrace: No such process.
38	thread_db_get_info: cannot get thread info: generic error
39
40This problem has been fixed.
41
42* "-async" and "-noasync" options removed.
43
44Support for the broken "-noasync" option has been removed (it caused
45GDB to dump core).
46
47* New ``start'' command.
48
49This command runs the program until the begining of the main procedure.
50
51* New BSD Kernel Data Access Library (libkvm) interface
52
53Using ``target kvm'' it is now possible to debug kernel core dumps and
54live kernel memory images on various FreeBSD, NetBSD and OpenBSD
55platforms.  Currently supported (native-only) configurations are:
56
57FreeBSD/amd64			x86_64-*-freebsd*
58FreeBSD/i386			i?86-*-freebsd*
59NetBSD/i386			i?86-*-netbsd*
60NetBSD/m68k			m68*-*-netbsd*
61NetBSD/sparc			sparc-*-netbsd*
62OpenBSD/amd64			x86_64-*-openbsd*
63OpenBSD/i386			i?86-*-openbsd*
64OpenBSD/m68k			m68*-openbsd*
65OpenBSD/sparc			sparc-*-openbsd*
66
67* Signal trampoline code overhauled
68
69Many generic problems with GDB's signal handling code have been fixed.
70These include: backtraces through non-contiguous stacks; recognition
71of sa_sigaction signal trampolines; backtrace from a NULL pointer
72call; backtrace through a signal trampoline; step into and out of
73signal handlers; and single-stepping in the signal trampoline.
74
75Please note that kernel bugs are a limiting factor here.  These
76features have been shown to work on an s390 GNU/Linux system that
77include a 2.6.8-rc1 kernel.  Ref PR breakpoints/1702.
78
79* Cygwin support for DWARF 2 added.
80
81* New native configurations
82
83GNU/Linux/hppa					hppa*-*-linux*
84OpenBSD/hppa					hppa*-*-openbsd*
85OpenBSD/m68k					m68*-*-openbsd*
86OpenBSD/m88k					m88*-*-openbsd*
87OpenBSD/powerpc					powerpc-*-openbsd*
88NetBSD/vax					vax-*-netbsd*
89OpenBSD/vax					vax-*-openbsd*
90
91* END-OF-LIFE frame compatibility module
92
93GDB's internal frame infrastructure has been completely rewritten.
94The new infrastructure making it possible to support key new features
95including DWARF 2 Call Frame Information.  To aid in the task of
96migrating old configurations to this new infrastructure, a
97compatibility module, that allowed old configurations to continue to
98work, was also included.
99
100GDB 6.2 will be the last release to include this frame compatibility
101module.  This change directly impacts the following configurations:
102
103h8300-*-*
104mcore-*-*
105mn10300-*-*
106ns32k-*-*
107sh64-*-*
108v850-*-*
109xstormy16-*-*
110
111Unless there is activity to revive these configurations, they will be
112made OBSOLETE in GDB 6.3, and REMOVED from GDB 6.4.
113
114* REMOVED configurations and files
115
116Sun 3, running SunOS 3				m68*-*-sunos3*
117Sun 3, running SunOS 4				m68*-*-sunos4*
118Sun 2, running SunOS 3				m68000-*-sunos3*
119Sun 2, running SunOS 4				m68000-*-sunos4*
120Motorola 680x0 running LynxOS			m68*-*-lynxos*
121AT&T 3b1/Unix pc				m68*-att-*
122Bull DPX2 (68k, System V release 3)		m68*-bull-sysv*
123decstation					mips-dec-* mips-little-*
124riscos						mips-*-riscos* mips-*-sysv*
125sonymips					mips-sony-*
126sysv					mips*-*-sysv4* (IRIX 5/6 not included)
127
128*** Changes in GDB 6.1.1:
129
130* TUI (Text-mode User Interface) built-in (also included in GDB 6.1)
131
132The TUI (Text-mode User Interface) is now built as part of a default
133GDB configuration.  It is enabled by either selecting the TUI with the
134command line option "-i=tui" or by running the separate "gdbtui"
135program.  For more information on the TUI, see the manual "Debugging
136with GDB".
137
138* Pending breakpoint support (also included in GDB 6.1)
139
140Support has been added to allow you to specify breakpoints in shared
141libraries that have not yet been loaded.  If a breakpoint location
142cannot be found, and the "breakpoint pending" option is set to auto,
143GDB queries you if you wish to make the breakpoint pending on a future
144shared-library load.  If and when GDB resolves the breakpoint symbol,
145the pending breakpoint is removed as one or more regular breakpoints
146are created.
147
148Pending breakpoints are very useful for GCJ Java debugging.
149
150* Fixed ISO-C build problems
151
152The files bfd/elf-bfd.h, gdb/dictionary.c and gdb/types.c contained
153non ISO-C code that stopped them being built using a more strict ISO-C
154compiler (e.g., IBM's C compiler).
155
156* Fixed build problem on IRIX 5
157
158Due to header problems with <sys/proc.h>, the file gdb/proc-api.c
159wasn't able to compile compile on an IRIX 5 system.
160
161* Added execute permission to gdb/gdbserver/configure
162
163The shell script gdb/testsuite/gdb.stabs/configure lacked execute
164permission.  This bug would cause configure to fail on a number of
165systems (Solaris, IRIX).  Ref: server/519.
166
167* Fixed build problem on hpux2.0w-hp-hpux11.00 using the HP ANSI C compiler
168
169Older HPUX ANSI C compilers did not accept variable array sizes.  somsolib.c
170has been updated to use constant array sizes.
171
172* Fixed a panic in the DWARF Call Frame Info code on Solaris 2.7
173
174GCC 3.3.2, on Solaris 2.7, includes the DW_EH_PE_funcrel encoding in
175its generated DWARF Call Frame Info.  This encoding was causing GDB to
176panic, that panic has been fixed.  Ref: gdb/1628.
177
178* Fixed a problem when examining parameters in shared library code.
179
180When examining parameters in optimized shared library code generated
181by a mainline GCC, GDB would incorrectly report ``Variable "..." is
182not available''.  GDB now correctly displays the variable's value.
183
184*** Changes in GDB 6.1:
185
186* Removed --with-mmalloc
187
188Support for the mmalloc memory manager has been removed, as it
189conflicted with the internal gdb byte cache.
190
191* Changes in AMD64 configurations
192
193The AMD64 target now includes the %cs and %ss registers.  As a result
194the AMD64 remote protocol has changed; this affects the floating-point
195and SSE registers.  If you rely on those registers for your debugging,
196you should upgrade gdbserver on the remote side.
197
198* Revised SPARC target
199
200The SPARC target has been completely revised, incorporating the
201FreeBSD/sparc64 support that was added for GDB 6.0.  As a result
202support for LynxOS and SunOS 4 has been dropped.  Calling functions
203from within GDB on operating systems with a non-executable stack
204(Solaris, OpenBSD) now works.
205
206* New C++ demangler
207
208GDB has a new C++ demangler which does a better job on the mangled
209names generated by current versions of g++.  It also runs faster, so
210with this and other changes gdb should now start faster on large C++
211programs.
212
213* DWARF 2 Location Expressions
214
215GDB support for location expressions has been extended to support function
216arguments and frame bases.  Older versions of GDB could crash when they
217encountered these.
218
219* C++ nested types and namespaces
220
221GDB's support for nested types and namespaces in C++ has been
222improved, especially if you use the DWARF 2 debugging format.  (This
223is the default for recent versions of GCC on most platforms.)
224Specifically, if you have a class "Inner" defined within a class or
225namespace "Outer", then GDB realizes that the class's name is
226"Outer::Inner", not simply "Inner".  This should greatly reduce the
227frequency of complaints about not finding RTTI symbols.  In addition,
228if you are stopped at inside of a function defined within a namespace,
229GDB modifies its name lookup accordingly.
230
231* New native configurations
232
233NetBSD/amd64					x86_64-*-netbsd*
234OpenBSD/amd64					x86_64-*-openbsd*
235OpenBSD/alpha					alpha*-*-openbsd*
236OpenBSD/sparc					sparc-*-openbsd*
237OpenBSD/sparc64					sparc64-*-openbsd*
238
239* New debugging protocols
240
241M32R with SDI protocol				m32r-*-elf*
242
243* "set prompt-escape-char" command deleted.
244
245The command "set prompt-escape-char" has been deleted.  This command,
246and its very obscure effet on GDB's prompt, was never documented,
247tested, nor mentioned in the NEWS file.
248
249* OBSOLETE configurations and files
250
251Configurations that have been declared obsolete in this release have
252been commented out.  Unless there is activity to revive these
253configurations, the next release of GDB will have their sources
254permanently REMOVED.
255
256Sun 3, running SunOS 3				m68*-*-sunos3*
257Sun 3, running SunOS 4				m68*-*-sunos4*
258Sun 2, running SunOS 3				m68000-*-sunos3*
259Sun 2, running SunOS 4				m68000-*-sunos4*
260Motorola 680x0 running LynxOS			m68*-*-lynxos*
261AT&T 3b1/Unix pc				m68*-att-*
262Bull DPX2 (68k, System V release 3)		m68*-bull-sysv*
263decstation					mips-dec-* mips-little-*
264riscos						mips-*-riscos* mips-*-sysv*
265sonymips					mips-sony-*
266sysv					mips*-*-sysv4* (IRIX 5/6 not included)
267
268* REMOVED configurations and files
269
270SGI Irix-4.x				mips-sgi-irix4	or iris4
271SGI Iris (MIPS) running Irix V3:  	mips-sgi-irix   or  iris
272Z8000 simulator		  		z8k-zilog-none 	  or z8ksim
273Matsushita MN10200 w/simulator			mn10200-*-*
274H8/500 simulator 			h8500-hitachi-hms or h8500hms
275HP/PA running BSD				hppa*-*-bsd*
276HP/PA running OSF/1				hppa*-*-osf*
277HP/PA Pro target				hppa*-*-pro*
278PMAX (MIPS) running Mach 3.0			mips*-*-mach3*
279386BSD						i[3456]86-*-bsd*
280Sequent family					i[3456]86-sequent-sysv4*
281						i[3456]86-sequent-sysv*
282						i[3456]86-sequent-bsd*
283SPARC running LynxOS				sparc-*-lynxos*
284SPARC running SunOS 4				sparc-*-sunos4*
285Tsqware Sparclet				sparclet-*-*
286Fujitsu SPARClite 			sparclite-fujitsu-none  or  sparclite
287
288*** Changes in GDB 6.0:
289
290* Objective-C
291
292Support for debugging the Objective-C programming language has been
293integrated into GDB.
294
295* New backtrace mechanism (includes DWARF 2 Call Frame Information).
296
297DWARF 2's Call Frame Information makes available compiler generated
298information that more exactly describes the program's run-time stack.
299By using this information, GDB is able to provide more robust stack
300backtraces.
301
302The i386, amd64 (nee, x86-64), Alpha, m68hc11, ia64, and m32r targets
303have been updated to use a new backtrace mechanism which includes
304DWARF 2 CFI support.
305
306* Hosted file I/O.
307
308GDB's remote protocol has been extended to include support for hosted
309file I/O (where the remote target uses GDB's file system).  See GDB's
310remote protocol documentation for details.
311
312* All targets using the new architecture framework.
313
314All of GDB's targets have been updated to use the new internal
315architecture framework.  The way is now open for future GDB releases
316to include cross-architecture native debugging support (i386 on amd64,
317ppc32 on ppc64).
318
319* GNU/Linux's Thread Local Storage (TLS)
320
321GDB now includes support for for the GNU/Linux implementation of
322per-thread variables.
323
324* GNU/Linux's Native POSIX Thread Library (NPTL)
325
326GDB's thread code has been updated to work with either the new
327GNU/Linux NPTL thread library or the older "LinuxThreads" library.
328
329* Separate debug info.
330
331GDB, in conjunction with BINUTILS, now supports a mechanism for
332automatically loading debug information from a separate file.  Instead
333of shipping full debug and non-debug versions of system libraries,
334system integrators can now instead ship just the stripped libraries
335and optional debug files.
336
337* DWARF 2 Location Expressions
338
339DWARF 2 Location Expressions allow the compiler to more completely
340describe the location of variables (even in optimized code) to the
341debugger.
342
343GDB now includes preliminary support for location expressions (support
344for DW_OP_piece is still missing).
345
346* Java
347
348A number of long standing bugs that caused GDB to die while starting a
349Java application have been fixed.  GDB's Java support is now
350considered "useable".
351
352* GNU/Linux support for fork, vfork, and exec.
353
354The "catch fork", "catch exec", "catch vfork", and "set follow-fork-mode"
355commands are now implemented for GNU/Linux.  They require a 2.5.x or later
356kernel.
357
358* GDB supports logging output to a file
359
360There are two new commands, "set logging" and "show logging", which can be
361used to capture GDB's output to a file.
362
363* The meaning of "detach" has changed for gdbserver
364
365The "detach" command will now resume the application, as documented.  To
366disconnect from gdbserver and leave it stopped, use the new "disconnect"
367command.
368
369* d10v, m68hc11 `regs' command deprecated
370
371The `info registers' command has been updated so that it displays the
372registers using a format identical to the old `regs' command.
373
374* Profiling support
375
376A new command, "maint set profile on/off", has been added.  This command can
377be used to enable or disable profiling while running GDB, to profile a
378session or a set of commands.  In addition there is a new configure switch,
379"--enable-profiling", which will cause GDB to be compiled with profiling
380data, for more informative profiling results.
381
382* Default MI syntax changed to "mi2".
383
384The default MI (machine interface) syntax, enabled by the command line
385option "-i=mi", has been changed to "mi2".  The previous MI syntax,
386"mi1", can be enabled by specifying the option "-i=mi1".
387
388Support for the original "mi0" syntax (included in GDB 5.0) has been
389removed.
390
391Fix for gdb/192: removed extraneous space when displaying frame level.
392Fix for gdb/672: update changelist is now output in mi list format.
393Fix for gdb/702: a -var-assign that updates the value now shows up
394                 in a subsequent -var-update.
395
396* New native configurations.
397
398FreeBSD/amd64					x86_64-*-freebsd*
399
400* Multi-arched targets.
401
402HP/PA HPUX11                                    hppa*-*-hpux*
403Renesas M32R/D w/simulator			m32r-*-elf*
404
405* OBSOLETE configurations and files
406
407Configurations that have been declared obsolete in this release have
408been commented out.  Unless there is activity to revive these
409configurations, the next release of GDB will have their sources
410permanently REMOVED.
411
412Z8000 simulator		  		z8k-zilog-none 	  or z8ksim
413Matsushita MN10200 w/simulator			mn10200-*-*
414H8/500 simulator 			h8500-hitachi-hms or h8500hms
415HP/PA running BSD				hppa*-*-bsd*
416HP/PA running OSF/1				hppa*-*-osf*
417HP/PA Pro target				hppa*-*-pro*
418PMAX (MIPS) running Mach 3.0			mips*-*-mach3*
419Sequent family					i[3456]86-sequent-sysv4*
420						i[3456]86-sequent-sysv*
421						i[3456]86-sequent-bsd*
422Tsqware Sparclet				sparclet-*-*
423Fujitsu SPARClite 			sparclite-fujitsu-none  or  sparclite
424
425* REMOVED configurations and files
426
427V850EA ISA
428Motorola Delta 88000 running Sys V		m88k-motorola-sysv  or  delta88
429IBM AIX PS/2					i[3456]86-*-aix
430i386 running Mach 3.0				i[3456]86-*-mach3*
431i386 running Mach				i[3456]86-*-mach*
432i386 running OSF/1				i[3456]86-*osf1mk*
433HP/Apollo 68k Family				m68*-apollo*-sysv*,
434						m68*-apollo*-bsd*,
435						m68*-hp-bsd*, m68*-hp-hpux*
436Argonaut Risc Chip (ARC)			arc-*-*
437Mitsubishi D30V					d30v-*-*
438Fujitsu FR30					fr30-*-elf*
439OS/9000						i[34]86-*-os9k
440I960 with MON960				i960-*-coff
441
442* MIPS $fp behavior changed
443
444The convenience variable $fp, for the MIPS, now consistently returns
445the address of the current frame's base.  Previously, depending on the
446context, $fp could refer to either $sp or the current frame's base
447address.  See ``8.10 Registers'' in the manual ``Debugging with GDB:
448The GNU Source-Level Debugger''.
449
450*** Changes in GDB 5.3:
451
452* GNU/Linux shared library multi-threaded performance improved.
453
454When debugging a multi-threaded application on GNU/Linux, GDB now uses
455`/proc', in preference to `ptrace' for memory reads.  This may result
456in an improvement in the start-up time of multi-threaded, shared
457library applications when run under GDB.  One GDB user writes: ``loads
458shared libs like mad''.
459
460* ``gdbserver'' now supports multi-threaded applications on some targets
461
462Support for debugging multi-threaded applications which use
463the GNU/Linux LinuxThreads package has been added for
464arm*-*-linux*-gnu*, i[3456]86-*-linux*-gnu*, mips*-*-linux*-gnu*,
465powerpc*-*-linux*-gnu*, and sh*-*-linux*-gnu*.
466
467* GDB now supports C/C++ preprocessor macros.
468
469GDB now expands preprocessor macro invocations in C/C++ expressions,
470and provides various commands for showing macro definitions and how
471they expand.
472
473The new command `macro expand EXPRESSION' expands any macro
474invocations in expression, and shows the result.
475
476The new command `show macro MACRO-NAME' shows the definition of the
477macro named MACRO-NAME, and where it was defined.
478
479Most compilers don't include information about macros in the debugging
480information by default.  In GCC 3.1, for example, you need to compile
481your program with the options `-gdwarf-2 -g3'.  If the macro
482information is present in the executable, GDB will read it.
483
484* Multi-arched targets.
485
486DEC Alpha (partial)				alpha*-*-*
487DEC VAX (partial)				vax-*-*
488NEC V850					v850-*-*
489National Semiconductor NS32000 (partial)	ns32k-*-*
490Motorola 68000 (partial)                        m68k-*-*
491Motorola MCORE                                  mcore-*-*
492
493* New targets.
494
495Fujitsu FRV architecture added by Red Hat	frv*-*-*
496
497
498* New native configurations
499
500Alpha NetBSD					alpha*-*-netbsd*
501SH NetBSD					sh*-*-netbsdelf*
502MIPS NetBSD					mips*-*-netbsd*
503UltraSPARC NetBSD				sparc64-*-netbsd*
504
505* OBSOLETE configurations and files
506
507Configurations that have been declared obsolete in this release have
508been commented out.  Unless there is activity to revive these
509configurations, the next release of GDB will have their sources
510permanently REMOVED.
511
512Mitsubishi D30V					d30v-*-*
513OS/9000						i[34]86-*-os9k
514IBM AIX PS/2					i[3456]86-*-aix
515Fujitsu FR30					fr30-*-elf*
516Motorola Delta 88000 running Sys V		m88k-motorola-sysv  or  delta88
517Argonaut Risc Chip (ARC)			arc-*-*
518i386 running Mach 3.0				i[3456]86-*-mach3*
519i386 running Mach				i[3456]86-*-mach*
520i386 running OSF/1				i[3456]86-*osf1mk*
521HP/Apollo 68k Family				m68*-apollo*-sysv*,
522						m68*-apollo*-bsd*,
523						m68*-hp-bsd*, m68*-hp-hpux*
524I960 with MON960				i960-*-coff
525
526* OBSOLETE languages
527
528CHILL, a Pascal like language used by telecommunications companies.
529
530* REMOVED configurations and files
531
532AMD 29k family via UDI				a29k-amd-udi, udi29k
533A29K VxWorks					a29k-*-vxworks
534AMD 29000 embedded, using EBMON			a29k-none-none
535AMD 29000 embedded with COFF			a29k-none-coff
536AMD 29000 embedded with a.out			a29k-none-aout
537
538testsuite/gdb.hp/gdb.threads-hp/		directory
539
540* New command "set max-user-call-depth <nnn>"
541
542This command allows the user to limit the call depth of user-defined
543commands.  The default is 1024.
544
545* Changes in FreeBSD/i386 native debugging.
546
547Support for the "generate-core-file" has been added.
548
549* New commands "dump", "append", and "restore".
550
551These commands allow data to be copied from target memory
552to a bfd-format or binary file (dump and append), and back
553from a file into memory (restore).
554
555* Improved "next/step" support on multi-processor Alpha Tru64.
556
557The previous single-step mechanism could cause unpredictable problems,
558including the random appearance of SIGSEGV or SIGTRAP signals. The use
559of a software single-step mechanism prevents this.
560
561*** Changes in GDB 5.2.1:
562
563* New targets.
564
565Atmel AVR					avr*-*-*
566
567* Bug fixes
568
569gdb/182: gdb/323: gdb/237: On alpha, gdb was reporting:
570mdebugread.c:2443: gdb-internal-error: sect_index_data not initialized
571Fix, by Joel Brobecker imported from mainline.
572
573gdb/439: gdb/291: On some ELF object files, gdb was reporting:
574dwarf2read.c:1072: gdb-internal-error: sect_index_text not initialize
575Fix, by Fred Fish, imported from mainline.
576
577Dwarf2 .debug_frame & .eh_frame handler improved in many ways.
578Surprisingly enough, it works now.
579By Michal Ludvig, imported from mainline.
580
581i386 hardware watchpoint support:
582avoid misses on second run for some targets.
583By Pierre Muller, imported from mainline.
584
585*** Changes in GDB 5.2:
586
587* New command "set trust-readonly-sections on[off]".
588
589This command is a hint that tells gdb that read-only sections
590really are read-only (ie. that their contents will not change).
591In this mode, gdb will go to the object file rather than the
592target to read memory from read-only sections (such as ".text").
593This can be a significant performance improvement on some
594(notably embedded) targets.
595
596* New command "generate-core-file" (or "gcore").
597
598This new gdb command allows the user to drop a core file of the child
599process state at any time.  So far it's been implemented only for
600GNU/Linux and Solaris, but should be relatively easily ported to other
601hosts.  Argument is core file name (defaults to core.<pid>).
602
603* New command line option
604
605GDB now accepts --pid or -p followed by a process id.
606
607* Change in command line behavior -- corefiles vs. process ids.
608
609There is a subtle behavior in the way in which GDB handles
610command line arguments.  The first non-flag argument is always
611a program to debug, but the second non-flag argument may either
612be a corefile or a process id.  Previously, GDB would attempt to
613open the second argument as a corefile, and if that failed, would
614issue a superfluous error message and then attempt to attach it as
615a process.  Now, if the second argument begins with a non-digit,
616it will be treated as a corefile.  If it begins with a digit,
617GDB will attempt to attach it as a process, and if no such process
618is found, will then attempt to open it as a corefile.
619
620* Changes in ARM configurations.
621
622Multi-arch support is enabled for all ARM configurations.  The ARM/NetBSD
623configuration is fully multi-arch.
624
625* New native configurations
626
627ARM NetBSD					arm*-*-netbsd*
628x86 OpenBSD					i[3456]86-*-openbsd*
629AMD x86-64 running GNU/Linux			x86_64-*-linux-*
630Sparc64 running FreeBSD				sparc64-*-freebsd*
631
632* New targets
633
634Sanyo XStormy16					xstormy16-elf
635
636* OBSOLETE configurations and files
637
638Configurations that have been declared obsolete in this release have
639been commented out.  Unless there is activity to revive these
640configurations, the next release of GDB will have their sources
641permanently REMOVED.
642
643AMD 29k family via UDI				a29k-amd-udi, udi29k
644A29K VxWorks					a29k-*-vxworks
645AMD 29000 embedded, using EBMON			a29k-none-none
646AMD 29000 embedded with COFF			a29k-none-coff
647AMD 29000 embedded with a.out			a29k-none-aout
648
649testsuite/gdb.hp/gdb.threads-hp/		directory
650
651* REMOVED configurations and files
652
653TI TMS320C80					tic80-*-*
654WDC 65816					w65-*-*
655PowerPC Solaris					powerpcle-*-solaris*
656PowerPC Windows NT				powerpcle-*-cygwin32
657PowerPC Netware					powerpc-*-netware*
658Harris/CXUX m88k				m88*-harris-cxux*
659Most ns32k hosts and targets			ns32k-*-mach3* ns32k-umax-*
660						ns32k-utek-sysv* ns32k-utek-*
661SunOS 4.0.Xi on i386				i[3456]86-*-sunos*
662Ultracomputer (29K) running Sym1		a29k-nyu-sym1 a29k-*-kern*
663Sony NEWS (68K) running NEWSOS 3.x		m68*-sony-sysv news
664ISI Optimum V (3.05) under 4.3bsd.		m68*-isi-*
665Apple Macintosh (MPW) host and target		N/A host, powerpc-*-macos*
666
667* Changes to command line processing
668
669The new `--args' feature can be used to specify command-line arguments
670for the inferior from gdb's command line.
671
672* Changes to key bindings
673
674There is a new `operate-and-get-next' function bound to `C-o'.
675
676*** Changes in GDB 5.1.1
677
678Fix compile problem on DJGPP.
679
680Fix a problem with floating-point registers on the i386 being
681corrupted.
682
683Fix to stop GDB crashing on .debug_str debug info.
684
685Numerous documentation fixes.
686
687Numerous testsuite fixes.
688
689*** Changes in GDB 5.1:
690
691* New native configurations
692
693Alpha FreeBSD					alpha*-*-freebsd*
694x86 FreeBSD 3.x and 4.x				i[3456]86*-freebsd[34]*
695MIPS GNU/Linux					mips*-*-linux*
696MIPS SGI Irix 6.x				mips*-sgi-irix6*
697ia64 AIX					ia64-*-aix*
698s390 and s390x GNU/Linux			{s390,s390x}-*-linux*
699
700* New targets
701
702Motorola 68HC11 and 68HC12			m68hc11-elf
703CRIS						cris-axis
704UltraSparc running GNU/Linux			sparc64-*-linux*
705
706* OBSOLETE configurations and files
707
708x86 FreeBSD before 2.2				i[3456]86*-freebsd{1,2.[01]}*,
709Harris/CXUX m88k				m88*-harris-cxux*
710Most ns32k hosts and targets			ns32k-*-mach3* ns32k-umax-*
711						ns32k-utek-sysv* ns32k-utek-*
712TI TMS320C80					tic80-*-*
713WDC 65816					w65-*-*
714Ultracomputer (29K) running Sym1		a29k-nyu-sym1 a29k-*-kern*
715PowerPC Solaris					powerpcle-*-solaris*
716PowerPC Windows NT				powerpcle-*-cygwin32
717PowerPC Netware					powerpc-*-netware*
718SunOS 4.0.Xi on i386				i[3456]86-*-sunos*
719Sony NEWS (68K) running NEWSOS 3.x		m68*-sony-sysv news
720ISI Optimum V (3.05) under 4.3bsd.		m68*-isi-*
721Apple Macintosh (MPW) host			N/A
722
723stuff.c (Program to stuff files into a specially prepared space in kdb)
724kdb-start.c (Main loop for the standalone kernel debugger)
725
726Configurations that have been declared obsolete in this release have
727been commented out.  Unless there is activity to revive these
728configurations, the next release of GDB will have their sources
729permanently REMOVED.
730
731* REMOVED configurations and files
732
733Altos 3068					m68*-altos-*
734Convex						c1-*-*, c2-*-*
735Pyramid						pyramid-*-*
736ARM RISCix					arm-*-* (as host)
737Tahoe						tahoe-*-*
738ser-ocd.c					*-*-*
739
740* GDB has been converted to ISO C.
741
742GDB's source code has been converted to ISO C.  In particular, the
743sources are fully protoized, and rely on standard headers being
744present.
745
746* Other news:
747
748* "info symbol" works on platforms which use COFF, ECOFF, XCOFF, and NLM.
749
750* The MI enabled by default.
751
752The new machine oriented interface (MI) introduced in GDB 5.0 has been
753revised and enabled by default.  Packages which use GDB as a debugging
754engine behind a UI or another front end are encouraged to switch to
755using the GDB/MI interface, instead of the old annotations interface
756which is now deprecated.
757
758* Support for debugging Pascal programs.
759
760GDB now includes support for debugging Pascal programs.  The following
761main features are supported:
762
763    - Pascal-specific data types such as sets;
764
765    - automatic recognition of Pascal sources based on file-name
766      extension;
767
768    - Pascal-style display of data types, variables, and functions;
769
770    - a Pascal expression parser.
771
772However, some important features are not yet supported.
773
774    - Pascal string operations are not supported at all;
775
776    - there are some problems with boolean types;
777
778    - Pascal type hexadecimal constants are not supported
779      because they conflict with the internal variables format;
780
781    - support for Pascal objects and classes is not full yet;
782
783    - unlike Pascal, GDB is case-sensitive for symbol names.
784
785* Changes in completion.
786
787Commands such as `shell', `run' and `set args', which pass arguments
788to inferior programs, now complete on file names, similar to what
789users expect at the shell prompt.
790
791Commands which accept locations, such as `disassemble', `print',
792`breakpoint', `until', etc. now complete on filenames as well as
793program symbols.  Thus, if you type "break foob TAB", and the source
794files linked into the programs include `foobar.c', that file name will
795be one of the candidates for completion.  However, file names are not
796considered for completion after you typed a colon that delimits a file
797name from a name of a function in that file, as in "break foo.c:bar".
798
799`set demangle-style' completes on available demangling styles.
800
801* New platform-independent commands:
802
803It is now possible to define a post-hook for a command as well as a
804hook that runs before the command.  For more details, see the
805documentation of `hookpost' in the GDB manual.
806
807* Changes in GNU/Linux native debugging.
808
809Support for debugging multi-threaded programs has been completely
810revised for all platforms except m68k and sparc.  You can now debug as
811many threads as your system allows you to have.
812
813Attach/detach is supported for multi-threaded programs.
814
815Support for SSE registers was added for x86.  This doesn't work for
816multi-threaded programs though.
817
818* Changes in MIPS configurations.
819
820Multi-arch support is enabled for all MIPS configurations.
821
822GDB can now be built as native debugger on SGI Irix 6.x systems for
823debugging n32 executables.  (Debugging 64-bit executables is not yet
824supported.)
825
826* Unified support for hardware watchpoints in all x86 configurations.
827
828Most (if not all) native x86 configurations support hardware-assisted
829breakpoints and watchpoints in a unified manner.  This support
830implements debug register sharing between watchpoints, which allows to
831put a virtually infinite number of watchpoints on the same address,
832and also supports watching regions up to 16 bytes with several debug
833registers.
834
835The new maintenance command `maintenance show-debug-regs' toggles
836debugging print-outs in functions that insert, remove, and test
837watchpoints and hardware breakpoints.
838
839* Changes in the DJGPP native configuration.
840
841New command ``info dos sysinfo'' displays assorted information about
842the CPU, OS, memory, and DPMI server.
843
844New commands ``info dos gdt'', ``info dos ldt'', and ``info dos idt''
845display information about segment descriptors stored in GDT, LDT, and
846IDT.
847
848New commands ``info dos pde'' and ``info dos pte'' display entries
849from Page Directory and Page Tables (for now works with CWSDPMI only).
850New command ``info dos address-pte'' displays the Page Table entry for
851a given linear address.
852
853GDB can now pass command lines longer than 126 characters to the
854program being debugged (requires an update to the libdbg.a library
855which is part of the DJGPP development kit).
856
857DWARF2 debug info is now supported.
858
859It is now possible to `step' and `next' through calls to `longjmp'.
860
861* Changes in documentation.
862
863All GDB documentation was converted to GFDL, the GNU Free
864Documentation License.
865
866Tracepoints-related commands are now fully documented in the GDB
867manual.
868
869TUI, the Text-mode User Interface, is now documented in the manual.
870
871Tracepoints-related commands are now fully documented in the GDB
872manual.
873
874The "GDB Internals" manual now has an index.  It also includes
875documentation of `ui_out' functions, GDB coding standards, x86
876hardware watchpoints, and memory region attributes.
877
878* GDB's version number moved to ``version.in''
879
880The Makefile variable VERSION has been replaced by the file
881``version.in''.  People creating GDB distributions should update the
882contents of this file.
883
884* gdba.el deleted
885
886GUD support is now a standard part of the EMACS distribution.
887
888*** Changes in GDB 5.0:
889
890* Improved support for debugging FP programs on x86 targets
891
892Unified and much-improved support for debugging floating-point
893programs on all x86 targets.  In particular, ``info float'' now
894displays the FP registers in the same format on all x86 targets, with
895greater level of detail.
896
897* Improvements and bugfixes in hardware-assisted watchpoints
898
899It is now possible to watch array elements, struct members, and
900bitfields with hardware-assisted watchpoints.  Data-read watchpoints
901on x86 targets no longer erroneously trigger when the address is
902written.
903
904* Improvements in the native DJGPP version of GDB
905
906The distribution now includes all the scripts and auxiliary files
907necessary to build the native DJGPP version on MS-DOS/MS-Windows
908machines ``out of the box''.
909
910The DJGPP version can now debug programs that use signals.  It is
911possible to catch signals that happened in the debuggee, deliver
912signals to it, interrupt it with Ctrl-C, etc.  (Previously, a signal
913would kill the program being debugged.)  Programs that hook hardware
914interrupts (keyboard, timer, etc.) can also be debugged.
915
916It is now possible to debug DJGPP programs that redirect their
917standard handles or switch them to raw (as opposed to cooked) mode, or
918even close them.  The command ``run < foo > bar'' works as expected,
919and ``info terminal'' reports useful information about the debuggee's
920terminal, including raw/cooked mode, redirection, etc.
921
922The DJGPP version now uses termios functions for console I/O, which
923enables debugging graphics programs.  Interrupting GDB with Ctrl-C
924also works.
925
926DOS-style file names with drive letters are now fully supported by
927GDB.
928
929It is now possible to debug DJGPP programs that switch their working
930directory.  It is also possible to rerun the debuggee any number of
931times without restarting GDB; thus, you can use the same setup,
932breakpoints, etc. for many debugging sessions.
933
934* New native configurations
935
936ARM GNU/Linux					arm*-*-linux*
937PowerPC GNU/Linux				powerpc-*-linux*
938
939* New targets
940
941Motorola MCore					mcore-*-*
942x86 VxWorks					i[3456]86-*-vxworks*
943PowerPC VxWorks					powerpc-*-vxworks*
944TI TMS320C80					tic80-*-*
945
946* OBSOLETE configurations
947
948Altos 3068					m68*-altos-*
949Convex						c1-*-*, c2-*-*
950Pyramid						pyramid-*-*
951ARM RISCix					arm-*-* (as host)
952Tahoe						tahoe-*-*
953
954Configurations that have been declared obsolete will be commented out,
955but the code will be left in place.  If there is no activity to revive
956these configurations before the next release of GDB, the sources will
957be permanently REMOVED.
958
959* Gould support removed
960
961Support for the Gould PowerNode and NP1 has been removed.
962
963* New features for SVR4
964
965On SVR4 native platforms (such as Solaris), if you attach to a process
966without first loading a symbol file, GDB will now attempt to locate and
967load symbols from the running process's executable file.
968
969* Many C++ enhancements
970
971C++ support has been greatly improved. Overload resolution now works properly
972in almost all cases. RTTI support is on the way.
973
974* Remote targets can connect to a sub-program
975
976A popen(3) style serial-device has been added.  This device starts a
977sub-process (such as a stand-alone simulator) and then communicates
978with that.  The sub-program to run is specified using the syntax
979``|<program> <args>'' vis:
980
981	(gdb) set remotedebug 1
982	(gdb) target extended-remote |mn10300-elf-sim program-args
983
984* MIPS 64 remote protocol
985
986A long standing bug in the mips64 remote protocol where by GDB
987expected certain 32 bit registers (ex SR) to be transfered as 32
988instead of 64 bits has been fixed.
989
990The command ``set remote-mips64-transfers-32bit-regs on'' has been
991added to provide backward compatibility with older versions of GDB.
992
993* ``set remotebinarydownload'' replaced by ``set remote X-packet''
994
995The command ``set remotebinarydownload'' command has been replaced by
996``set remote X-packet''.  Other commands in ``set remote'' family
997include ``set remote P-packet''.
998
999* Breakpoint commands accept ranges.
1000
1001The breakpoint commands ``enable'', ``disable'', and ``delete'' now
1002accept a range of breakpoints, e.g. ``5-7''.  The tracepoint command
1003``tracepoint passcount'' also accepts a range of tracepoints.
1004
1005* ``apropos'' command added.
1006
1007The ``apropos'' command searches through command names and
1008documentation strings, printing out matches, making it much easier to
1009try to find a command that does what you are looking for.
1010
1011* New MI interface
1012
1013A new machine oriented interface (MI) has been added to GDB.  This
1014interface is designed for debug environments running GDB as a separate
1015process.  This is part of the long term libGDB project.  See the
1016"GDB/MI" chapter of the GDB manual for further information.  It can be
1017enabled by configuring with:
1018
1019	.../configure --enable-gdbmi
1020
1021*** Changes in GDB-4.18:
1022
1023* New native configurations
1024
1025HP-UX 10.20					hppa*-*-hpux10.20
1026HP-UX 11.x					hppa*-*-hpux11.0*
1027M68K GNU/Linux					m68*-*-linux*
1028
1029* New targets
1030
1031Fujitsu FR30					fr30-*-elf*
1032Intel StrongARM					strongarm-*-*
1033Mitsubishi D30V					d30v-*-*
1034
1035* OBSOLETE configurations
1036
1037Gould PowerNode, NP1				np1-*-*, pn-*-*
1038
1039Configurations that have been declared obsolete will be commented out,
1040but the code will be left in place.  If there is no activity to revive
1041these configurations before the next release of GDB, the sources will
1042be permanently REMOVED.
1043
1044* ANSI/ISO C
1045
1046As a compatibility experiment, GDB's source files buildsym.h and
1047buildsym.c have been converted to pure standard C, no longer
1048containing any K&R compatibility code.  We believe that all systems in
1049use today either come with a standard C compiler, or have a GCC port
1050available.  If this is not true, please report the affected
1051configuration to bug-gdb@gnu.org immediately.  See the README file for
1052information about getting a standard C compiler if you don't have one
1053already.
1054
1055* Readline 2.2
1056
1057GDB now uses readline 2.2.
1058
1059* set extension-language
1060
1061You can now control the mapping between filename extensions and source
1062languages by using the `set extension-language' command.  For instance,
1063you can ask GDB to treat .c files as C++ by saying
1064	set extension-language .c c++
1065The command `info extensions' lists all of the recognized extensions
1066and their associated languages.
1067
1068* Setting processor type for PowerPC and RS/6000
1069
1070When GDB is configured for a powerpc*-*-* or an rs6000*-*-* target,
1071you can use the `set processor' command to specify what variant of the
1072PowerPC family you are debugging.  The command
1073
1074	set processor NAME
1075
1076sets the PowerPC/RS6000 variant to NAME.  GDB knows about the
1077following PowerPC and RS6000 variants:
1078
1079  ppc-uisa  PowerPC UISA - a PPC processor as viewed by user-level code
1080  rs6000    IBM RS6000 ("POWER") architecture, user-level view
1081  403       IBM PowerPC 403
1082  403GC     IBM PowerPC 403GC
1083  505       Motorola PowerPC 505
1084  860       Motorola PowerPC 860 or 850
1085  601       Motorola PowerPC 601
1086  602       Motorola PowerPC 602
1087  603       Motorola/IBM PowerPC 603 or 603e
1088  604       Motorola PowerPC 604 or 604e
1089  750       Motorola/IBM PowerPC 750 or 750
1090
1091At the moment, this command just tells GDB what to name the
1092special-purpose processor registers.  Since almost all the affected
1093registers are inaccessible to user-level programs, this command is
1094only useful for remote debugging in its present form.
1095
1096* HP-UX support
1097
1098Thanks to a major code donation from Hewlett-Packard, GDB now has much
1099more extensive support for HP-UX.  Added features include shared
1100library support, kernel threads and hardware watchpoints for 11.00,
1101support for HP's ANSI C and C++ compilers, and a compatibility mode
1102for xdb and dbx commands.
1103
1104* Catchpoints
1105
1106HP's donation includes the new concept of catchpoints, which is a
1107generalization of the old catch command.  On HP-UX, it is now possible
1108to catch exec, fork, and vfork, as well as library loading.
1109
1110This means that the existing catch command has changed; its first
1111argument now specifies the type of catch to be set up.  See the
1112output of "help catch" for a list of catchpoint types.
1113
1114* Debugging across forks
1115
1116On HP-UX, you can choose which process to debug when a fork() happens
1117in the inferior.
1118
1119* TUI
1120
1121HP has donated a curses-based terminal user interface (TUI).  To get
1122it, build with --enable-tui.  Although this can be enabled for any
1123configuration, at present it only works for native HP debugging.
1124
1125* GDB remote protocol additions
1126
1127A new protocol packet 'X' that writes binary data is now available.
1128Default behavior is to try 'X', then drop back to 'M' if the stub
1129fails to respond.  The settable variable `remotebinarydownload'
1130allows explicit control over the use of 'X'.
1131
1132For 64-bit targets, the memory packets ('M' and 'm') can now contain a
1133full 64-bit address.  The command
1134
1135	set remoteaddresssize 32
1136
1137can be used to revert to the old behaviour.  For existing remote stubs
1138the change should not be noticed, as the additional address information
1139will be discarded.
1140
1141In order to assist in debugging stubs, you may use the maintenance
1142command `packet' to send any text string to the stub.  For instance,
1143
1144	maint packet heythere
1145
1146sends the packet "$heythere#<checksum>".  Note that it is very easy to
1147disrupt a debugging session by sending the wrong packet at the wrong
1148time.
1149
1150The compare-sections command allows you to compare section data on the
1151target to what is in the executable file without uploading or
1152downloading, by comparing CRC checksums.
1153
1154* Tracing can collect general expressions
1155
1156You may now collect general expressions at tracepoints.  This requires
1157further additions to the target-side stub; see tracepoint.c and
1158doc/agentexpr.texi for further details.
1159
1160* mask-address variable for Mips
1161
1162For Mips targets, you may control the zeroing of the upper 32 bits of
1163a 64-bit address by entering `set mask-address on'.  This is mainly
1164of interest to users of embedded R4xxx and R5xxx processors.
1165
1166* Higher serial baud rates
1167
1168GDB's serial code now allows you to specify baud rates 57600, 115200,
1169230400, and 460800 baud.  (Note that your host system may not be able
1170to achieve all of these rates.)
1171
1172* i960 simulator
1173
1174The i960 configuration now includes an initial implementation of a
1175builtin simulator, contributed by Jim Wilson.
1176
1177
1178*** Changes in GDB-4.17:
1179
1180* New native configurations
1181
1182Alpha GNU/Linux					alpha*-*-linux*
1183Unixware 2.x					i[3456]86-unixware2*
1184Irix 6.x					mips*-sgi-irix6*
1185PowerPC GNU/Linux				powerpc-*-linux*
1186PowerPC Solaris					powerpcle-*-solaris*
1187Sparc GNU/Linux					sparc-*-linux*
1188Motorola sysV68 R3V7.1				m68k-motorola-sysv
1189
1190* New targets
1191
1192Argonaut Risc Chip (ARC)			arc-*-*
1193Hitachi H8/300S					h8300*-*-*
1194Matsushita MN10200 w/simulator			mn10200-*-*
1195Matsushita MN10300 w/simulator			mn10300-*-*
1196MIPS NEC VR4100					mips64*vr4100*{,el}-*-elf*
1197MIPS NEC VR5000					mips64*vr5000*{,el}-*-elf*
1198MIPS Toshiba TX39				mips64*tx39*{,el}-*-elf*
1199Mitsubishi D10V w/simulator			d10v-*-*
1200Mitsubishi M32R/D w/simulator			m32r-*-elf*
1201Tsqware Sparclet				sparclet-*-*
1202NEC V850 w/simulator				v850-*-*
1203
1204* New debugging protocols
1205
1206ARM with RDI protocol				arm*-*-*
1207M68K with dBUG monitor				m68*-*-{aout,coff,elf}
1208DDB and LSI variants of PMON protocol		mips*-*-*
1209PowerPC with DINK32 monitor			powerpc{,le}-*-eabi
1210PowerPC with SDS protocol			powerpc{,le}-*-eabi
1211Macraigor OCD (Wiggler) devices			powerpc{,le}-*-eabi
1212
1213* DWARF 2
1214
1215All configurations can now understand and use the DWARF 2 debugging
1216format.  The choice is automatic, if the symbol file contains DWARF 2
1217information.
1218
1219* Java frontend
1220
1221GDB now includes basic Java language support.  This support is
1222only useful with Java compilers that produce native machine code.
1223
1224* solib-absolute-prefix and solib-search-path
1225
1226For SunOS and SVR4 shared libraries, you may now set the prefix for
1227loading absolute shared library symbol files, and the search path for
1228locating non-absolute shared library symbol files.
1229
1230* Live range splitting
1231
1232GDB can now effectively debug code for which GCC has performed live
1233range splitting as part of its optimization.  See gdb/doc/LRS for
1234more details on the expected format of the stabs information.
1235
1236* Hurd support
1237
1238GDB's support for the GNU Hurd, including thread debugging, has been
1239updated to work with current versions of the Hurd.
1240
1241* ARM Thumb support
1242
1243GDB's ARM target configuration now handles the ARM7T (Thumb) 16-bit
1244instruction set.  ARM GDB automatically detects when Thumb
1245instructions are in use, and adjusts disassembly and backtracing
1246accordingly.
1247
1248* MIPS16 support
1249
1250GDB's MIPS target configurations now handle the MIP16 16-bit
1251instruction set.
1252
1253* Overlay support
1254
1255GDB now includes support for overlays; if an executable has been
1256linked such that multiple sections are based at the same address, GDB
1257will decide which section to use for symbolic info.  You can choose to
1258control the decision manually, using overlay commands, or implement
1259additional target-side support and use "overlay load-target" to bring
1260in the overlay mapping.  Do "help overlay" for more detail.
1261
1262* info symbol
1263
1264The command "info symbol <address>" displays information about
1265the symbol at the specified address.
1266
1267* Trace support
1268
1269The standard remote protocol now includes an extension that allows
1270asynchronous collection and display of trace data.  This requires
1271extensive support in the target-side debugging stub.  Tracing mode
1272includes a new interaction mode in GDB and new commands: see the
1273file tracepoint.c for more details.
1274
1275* MIPS simulator
1276
1277Configurations for embedded MIPS now include a simulator contributed
1278by Cygnus Solutions.  The simulator supports the instruction sets
1279of most MIPS variants.
1280
1281* Sparc simulator
1282
1283Sparc configurations may now include the ERC32 simulator contributed
1284by the European Space Agency.  The simulator is not built into
1285Sparc targets by default; configure with --enable-sim to include it.
1286
1287* set architecture
1288
1289For target configurations that may include multiple variants of a
1290basic architecture (such as MIPS and SH), you may now set the
1291architecture explicitly.  "set arch" sets, "info arch" lists
1292the possible architectures.
1293
1294*** Changes in GDB-4.16:
1295
1296* New native configurations
1297
1298Windows 95, x86 Windows NT			i[345]86-*-cygwin32
1299M68K NetBSD					m68k-*-netbsd*
1300PowerPC AIX 4.x					powerpc-*-aix*
1301PowerPC MacOS					powerpc-*-macos*
1302PowerPC Windows NT				powerpcle-*-cygwin32
1303RS/6000 AIX 4.x					rs6000-*-aix4*
1304
1305* New targets
1306
1307ARM with RDP protocol				arm-*-*
1308I960 with MON960				i960-*-coff
1309MIPS VxWorks					mips*-*-vxworks*
1310MIPS VR4300 with PMON				mips64*vr4300{,el}-*-elf*
1311PowerPC with PPCBUG monitor			powerpc{,le}-*-eabi*
1312Hitachi SH3					sh-*-*
1313Matra Sparclet					sparclet-*-*
1314
1315* PowerPC simulator
1316
1317The powerpc-eabi configuration now includes the PSIM simulator,
1318contributed by Andrew Cagney, with assistance from Mike Meissner.
1319PSIM is a very elaborate model of the PowerPC, including not only
1320basic instruction set execution, but also details of execution unit
1321performance and I/O hardware.  See sim/ppc/README for more details.
1322
1323* Solaris 2.5
1324
1325GDB now works with Solaris 2.5.
1326
1327* Windows 95/NT native
1328
1329GDB will now work as a native debugger on Windows 95 and Windows NT.
1330To build it from source, you must use the "gnu-win32" environment,
1331which uses a DLL to emulate enough of Unix to run the GNU tools.
1332Further information, binaries, and sources are available at
1333ftp.cygnus.com, under pub/gnu-win32.
1334
1335* dont-repeat command
1336
1337If a user-defined command includes the command `dont-repeat', then the
1338command will not be repeated if the user just types return.  This is
1339useful if the command is time-consuming to run, so that accidental
1340extra keystrokes don't run the same command many times.
1341
1342* Send break instead of ^C
1343
1344The standard remote protocol now includes an option to send a break
1345rather than a ^C to the target in order to interrupt it.  By default,
1346GDB will send ^C; to send a break, set the variable `remotebreak' to 1.
1347
1348* Remote protocol timeout
1349
1350The standard remote protocol includes a new variable `remotetimeout'
1351that allows you to set the number of seconds before GDB gives up trying
1352to read from the target.  The default value is 2.
1353
1354* Automatic tracking of dynamic object loading (HPUX and Solaris only)
1355
1356By default GDB will automatically keep track of objects as they are
1357loaded and unloaded by the dynamic linker.  By using the command `set
1358stop-on-solib-events 1' you can arrange for GDB to stop the inferior
1359when shared library events occur, thus allowing you to set breakpoints
1360in shared libraries which are explicitly loaded by the inferior.
1361
1362Note this feature does not work on hpux8.  On hpux9 you must link
1363/usr/lib/end.o into your program.  This feature should work
1364automatically on hpux10.
1365
1366* Irix 5.x hardware watchpoint support
1367
1368Irix 5 configurations now support the use of hardware watchpoints.
1369
1370* Mips protocol "SYN garbage limit"
1371
1372When debugging a Mips target using the `target mips' protocol, you
1373may set the number of characters that GDB will ignore by setting
1374the `syn-garbage-limit'.  A value of -1 means that GDB will ignore
1375every character.  The default value is 1050.
1376
1377* Recording and replaying remote debug sessions
1378
1379If you set `remotelogfile' to the name of a file, gdb will write to it
1380a recording of a remote debug session.  This recording may then be
1381replayed back to gdb using "gdbreplay".  See gdbserver/README for
1382details.  This is useful when you have a problem with GDB while doing
1383remote debugging; you can make a recording of the session and send it
1384to someone else, who can then recreate the problem.
1385
1386* Speedups for remote debugging
1387
1388GDB includes speedups for downloading and stepping MIPS systems using
1389the IDT monitor, fast downloads to the Hitachi SH E7000 emulator,
1390and more efficient S-record downloading.
1391
1392* Memory use reductions and statistics collection
1393
1394GDB now uses less memory and reports statistics about memory usage.
1395Try the `maint print statistics' command, for example.
1396
1397*** Changes in GDB-4.15:
1398
1399* Psymtabs for XCOFF
1400
1401The symbol reader for AIX GDB now uses partial symbol tables.  This
1402can greatly improve startup time, especially for large executables.
1403
1404* Remote targets use caching
1405
1406Remote targets now use a data cache to speed up communication with the
1407remote side.  The data cache could lead to incorrect results because
1408it doesn't know about volatile variables, thus making it impossible to
1409debug targets which use memory mapped I/O devices. `set remotecache
1410off' turns the the data cache off.
1411
1412* Remote targets may have threads
1413
1414The standard remote protocol now includes support for multiple threads
1415in the target system, using new protocol commands 'H' and 'T'.  See
1416gdb/remote.c for details.
1417
1418* NetROM support
1419
1420If GDB is configured with `--enable-netrom', then it will include
1421support for the NetROM ROM emulator from XLNT Designs.  The NetROM
1422acts as though it is a bank of ROM on the target board, but you can
1423write into it over the network.  GDB's support consists only of
1424support for fast loading into the emulated ROM; to debug, you must use
1425another protocol, such as standard remote protocol.  The usual
1426sequence is something like
1427
1428	target nrom <netrom-hostname>
1429	load <prog>
1430	target remote <netrom-hostname>:1235
1431
1432* Macintosh host
1433
1434GDB now includes support for the Apple Macintosh, as a host only.  It
1435may be run as either an MPW tool or as a standalone application, and
1436it can debug through the serial port.  All the usual GDB commands are
1437available, but to the target command, you must supply "serial" as the
1438device type instead of "/dev/ttyXX".  See mpw-README in the main
1439directory for more information on how to build.  The MPW configuration
1440scripts */mpw-config.in support only a few targets, and only the
1441mips-idt-ecoff target has been tested.
1442
1443* Autoconf
1444
1445GDB configuration now uses autoconf.  This is not user-visible,
1446but does simplify configuration and building.
1447
1448* hpux10
1449
1450GDB now supports hpux10.
1451
1452*** Changes in GDB-4.14:
1453
1454* New native configurations
1455
1456x86 FreeBSD					i[345]86-*-freebsd
1457x86 NetBSD					i[345]86-*-netbsd
1458NS32k NetBSD					ns32k-*-netbsd
1459Sparc NetBSD					sparc-*-netbsd
1460
1461* New targets
1462
1463A29K VxWorks					a29k-*-vxworks
1464HP PA PRO embedded (WinBond W89K & Oki OP50N)	hppa*-*-pro*
1465CPU32 EST-300 emulator				m68*-*-est*
1466PowerPC ELF					powerpc-*-elf
1467WDC 65816					w65-*-*
1468
1469* Alpha OSF/1 support for procfs
1470
1471GDB now supports procfs under OSF/1-2.x and higher, which makes it
1472possible to attach to running processes.  As the mounting of the /proc
1473filesystem is optional on the Alpha, GDB automatically determines
1474the availability of /proc during startup.  This can lead to problems
1475if /proc is unmounted after GDB has been started.
1476
1477* Arguments to user-defined commands
1478
1479User commands may accept up to 10 arguments separated by whitespace.
1480Arguments are accessed within the user command via $arg0..$arg9.  A
1481trivial example:
1482define adder
1483  print $arg0 + $arg1 + $arg2
1484
1485To execute the command use:
1486adder 1 2 3
1487
1488Defines the command "adder" which prints the sum of its three arguments.
1489Note the arguments are text substitutions, so they may reference variables,
1490use complex expressions, or even perform inferior function calls.
1491
1492* New `if' and `while' commands
1493
1494This makes it possible to write more sophisticated user-defined
1495commands.  Both commands take a single argument, which is the
1496expression to evaluate, and must be followed by the commands to
1497execute, one per line, if the expression is nonzero, the list being
1498terminated by the word `end'.  The `if' command list may include an
1499`else' word, which causes the following commands to be executed only
1500if the expression is zero.
1501
1502* Fortran source language mode
1503
1504GDB now includes partial support for Fortran 77.  It will recognize
1505Fortran programs and can evaluate a subset of Fortran expressions, but
1506variables and functions may not be handled correctly.  GDB will work
1507with G77, but does not yet know much about symbols emitted by other
1508Fortran compilers.
1509
1510* Better HPUX support
1511
1512Most debugging facilities now work on dynamic executables for HPPAs
1513running hpux9 or later.  You can attach to running dynamically linked
1514processes, but by default the dynamic libraries will be read-only, so
1515for instance you won't be able to put breakpoints in them.  To change
1516that behavior do the following before running the program:
1517
1518	adb -w a.out
1519	__dld_flags?W 0x5
1520	control-d
1521
1522This will cause the libraries to be mapped private and read-write.
1523To revert to the normal behavior, do this:
1524
1525	adb -w a.out
1526	__dld_flags?W 0x4
1527	control-d
1528
1529You cannot set breakpoints or examine data in the library until after
1530the library is loaded if the function/data symbols do not have
1531external linkage.
1532
1533GDB can now also read debug symbols produced by the HP C compiler on
1534HPPAs (sorry, no C++, Fortran or 68k support).
1535
1536* Target byte order now dynamically selectable
1537
1538You can choose which byte order to use with a target system, via the
1539commands "set endian big" and "set endian little", and you can see the
1540current setting by using "show endian".  You can also give the command
1541"set endian auto", in which case GDB will use the byte order
1542associated with the executable.  Currently, only embedded MIPS
1543configurations support dynamic selection of target byte order.
1544
1545* New DOS host serial code
1546
1547This version uses DPMI interrupts to handle buffered I/O, so you
1548no longer need to run asynctsr when debugging boards connected to
1549a PC's serial port.
1550
1551*** Changes in GDB-4.13:
1552
1553* New "complete" command
1554
1555This lists all the possible completions for the rest of the line, if it
1556were to be given as a command itself.  This is intended for use by emacs.
1557
1558* Trailing space optional in prompt
1559
1560"set prompt" no longer adds a space for you after the prompt you set.  This
1561allows you to set a prompt which ends in a space or one that does not.
1562
1563* Breakpoint hit counts
1564
1565"info break" now displays a count of the number of times the breakpoint
1566has been hit.  This is especially useful in conjunction with "ignore"; you
1567can ignore a large number of breakpoint hits, look at the breakpoint info
1568to see how many times the breakpoint was hit, then run again, ignoring one
1569less than that number, and this will get you quickly to the last hit of
1570that breakpoint.
1571
1572* Ability to stop printing at NULL character
1573
1574"set print null-stop" will cause GDB to stop printing the characters of
1575an array when the first NULL is encountered.  This is useful when large
1576arrays actually contain only short strings.
1577
1578* Shared library breakpoints
1579
1580In SunOS 4.x, SVR4, and Alpha OSF/1 configurations, you can now set
1581breakpoints in shared libraries before the executable is run.
1582
1583* Hardware watchpoints
1584
1585There is a new hardware breakpoint for the watch command for sparclite
1586targets.  See gdb/sparclite/hw_breakpoint.note.
1587
1588Hardware watchpoints are also now supported under GNU/Linux.
1589
1590* Annotations
1591
1592Annotations have been added.  These are for use with graphical interfaces,
1593and are still experimental.  Currently only gdba.el uses these.
1594
1595* Improved Irix 5 support
1596
1597GDB now works properly with Irix 5.2.
1598
1599* Improved HPPA support
1600
1601GDB now works properly with the latest GCC and GAS.
1602
1603* New native configurations
1604
1605Sequent PTX4				i[34]86-sequent-ptx4
1606HPPA running OSF/1			hppa*-*-osf*
1607Atari TT running SVR4			m68*-*-sysv4*
1608RS/6000 LynxOS				rs6000-*-lynxos*
1609
1610* New targets
1611
1612OS/9000					i[34]86-*-os9k
1613MIPS R4000				mips64*{,el}-*-{ecoff,elf}
1614Sparc64					sparc64-*-*
1615
1616* Hitachi SH7000 and E7000-PC ICE support
1617
1618There is now support for communicating with the Hitachi E7000-PC ICE.
1619This is available automatically when GDB is configured for the SH.
1620
1621* Fixes
1622
1623As usual, a variety of small fixes and improvements, both generic
1624and configuration-specific.  See the ChangeLog for more detail.
1625
1626*** Changes in GDB-4.12:
1627
1628* Irix 5 is now supported
1629
1630* HPPA support
1631
1632GDB-4.12 on the HPPA has a number of changes which make it unable
1633to debug the output from the currently released versions of GCC and
1634GAS (GCC 2.5.8 and GAS-2.2 or PAGAS-1.36).  Until the next major release
1635of GCC and GAS, versions of these tools designed to work with GDB-4.12
1636can be retrieved via anonymous ftp from jaguar.cs.utah.edu:/dist.
1637
1638
1639*** Changes in GDB-4.11:
1640
1641* User visible changes:
1642
1643* Remote Debugging
1644
1645The "set remotedebug" option is now consistent between the mips remote
1646target, remote targets using the gdb-specific protocol, UDI (AMD's
1647debug protocol for the 29k) and the 88k bug monitor.  It is now an
1648integer specifying a debug level (normally 0 or 1, but 2 means more
1649debugging info for the mips target).
1650
1651* DEC Alpha native support
1652
1653GDB now works on the DEC Alpha.  GCC 2.4.5 does not produce usable
1654debug info, but GDB works fairly well with the DEC compiler and should
1655work with a future GCC release.  See the README file for a few
1656Alpha-specific notes.
1657
1658* Preliminary thread implementation
1659
1660GDB now has preliminary thread support for both SGI/Irix and LynxOS.
1661
1662* LynxOS native and target support for 386
1663
1664This release has been hosted on LynxOS 2.2, and also can be configured
1665to remotely debug programs running under LynxOS (see gdb/gdbserver/README
1666for details).
1667
1668* Improvements in C++ mangling/demangling.
1669
1670This release has much better g++ debugging, specifically in name
1671mangling/demangling, virtual function calls, print virtual table,
1672call methods, ...etc.
1673
1674*** Changes in GDB-4.10:
1675
1676 * User visible changes:
1677
1678Remote debugging using the GDB-specific (`target remote') protocol now
1679supports the `load' command.  This is only useful if you have some
1680other way of getting the stub to the target system, and you can put it
1681somewhere in memory where it won't get clobbered by the download.
1682
1683Filename completion now works.
1684
1685When run under emacs mode, the "info line" command now causes the
1686arrow to point to the line specified.  Also, "info line" prints
1687addresses in symbolic form (as well as hex).
1688
1689All vxworks based targets now support a user settable option, called
1690vxworks-timeout.  This option represents the number of seconds gdb
1691should wait for responses to rpc's.  You might want to use this if
1692your vxworks target is, perhaps, a slow software simulator or happens
1693to be on the far side of a thin network line.
1694
1695 * DEC alpha support
1696
1697This release contains support for using a DEC alpha as a GDB host for
1698cross debugging.  Native alpha debugging is not supported yet.
1699
1700
1701*** Changes in GDB-4.9:
1702
1703 * Testsuite
1704
1705This is the first GDB release which is accompanied by a matching testsuite.
1706The testsuite requires installation of dejagnu, which should be available
1707via ftp from most sites that carry GNU software.
1708
1709 * C++ demangling
1710
1711'Cfront' style demangling has had its name changed to 'ARM' style, to
1712emphasize that it was written from the specifications in the C++ Annotated
1713Reference Manual, not necessarily to be compatible with AT&T cfront.  Despite
1714disclaimers, it still generated too much confusion with users attempting to
1715use gdb with AT&T cfront.
1716
1717 * Simulators
1718
1719GDB now uses a standard remote interface to a simulator library.
1720So far, the library contains simulators for the Zilog Z8001/2, the
1721Hitachi H8/300, H8/500 and Super-H.
1722
1723 * New targets supported
1724
1725H8/300 simulator 			h8300-hitachi-hms or h8300hms
1726H8/500 simulator 			h8500-hitachi-hms or h8500hms
1727SH simulator				sh-hitachi-hms    or sh
1728Z8000 simulator		  		z8k-zilog-none 	  or z8ksim
1729IDT MIPS board over serial line		mips-idt-ecoff
1730
1731Cross-debugging to GO32 targets is supported.  It requires a custom
1732version of the i386-stub.c module which is integrated with the
1733GO32 memory extender.
1734
1735 * New remote protocols
1736
1737MIPS remote debugging protocol.
1738
1739 * New source languages supported
1740
1741This version includes preliminary support for Chill, a Pascal like language
1742used by telecommunications companies.  Chill support is also being integrated
1743into the GNU compiler, but we don't know when it will be publically available.
1744
1745
1746*** Changes in GDB-4.8:
1747
1748 * HP Precision Architecture supported
1749
1750GDB now supports HP PA-RISC machines running HPUX.  A preliminary
1751version of this support was available as a set of patches from the
1752University of Utah.  GDB does not support debugging of programs
1753compiled with the HP compiler, because HP will not document their file
1754format.  Instead, you must use GCC (version 2.3.2 or later) and PA-GAS
1755(as available from jaguar.cs.utah.edu:/dist/pa-gas.u4.tar.Z).
1756
1757Many problems in the preliminary version have been fixed.
1758
1759 * Faster and better demangling
1760
1761We have improved template demangling and fixed numerous bugs in the GNU style
1762demangler.  It can now handle type modifiers such as `static' or `const'.  Wide
1763character types (wchar_t) are now supported.  Demangling of each symbol is now
1764only done once, and is cached when the symbol table for a file is read in.
1765This results in a small increase in memory usage for C programs, a moderate
1766increase in memory usage for C++ programs, and a fantastic speedup in
1767symbol lookups.
1768
1769`Cfront' style demangling still doesn't work with AT&T cfront.  It was written
1770from the specifications in the Annotated Reference Manual, which AT&T's
1771compiler does not actually implement.
1772
1773 * G++ multiple inheritance compiler problem
1774
1775In the 2.3.2 release of gcc/g++, how the compiler resolves multiple
1776inheritance lattices was reworked to properly discover ambiguities.  We
1777recently found an example which causes this new algorithm to fail in a
1778very subtle way, producing bad debug information for those classes.
1779The file 'gcc.patch' (in this directory) can be applied to gcc to
1780circumvent the problem.  A future GCC release will contain a complete
1781fix.
1782
1783The previous G++ debug info problem (mentioned below for the gdb-4.7
1784release) is fixed in gcc version 2.3.2.
1785
1786 * Improved configure script
1787
1788The `configure' script will now attempt to guess your system type if
1789you don't supply a host system type.  The old scheme of supplying a
1790host system triplet is preferable over using this.  All the magic is
1791done in the new `config.guess' script.  Examine it for details.
1792
1793We have also brought our configure script much more in line with the FSF's
1794version.  It now supports the --with-xxx options.  In particular,
1795`--with-minimal-bfd' can be used to make the GDB binary image smaller.
1796The resulting GDB will not be able to read arbitrary object file formats --
1797only the format ``expected'' to be used on the configured target system.
1798We hope to make this the default in a future release.
1799
1800 * Documentation improvements
1801
1802There's new internal documentation on how to modify GDB, and how to
1803produce clean changes to the code.  We implore people to read it
1804before submitting changes.
1805
1806The GDB manual uses new, sexy Texinfo conditionals, rather than arcane
1807M4 macros.  The new texinfo.tex is provided in this release.  Pre-built
1808`info' files are also provided.  To build `info' files from scratch,
1809you will need the latest `makeinfo' release, which will be available in
1810a future texinfo-X.Y release.
1811
1812*NOTE*  The new texinfo.tex can cause old versions of TeX to hang.
1813We're not sure exactly which versions have this problem, but it has
1814been seen in 3.0.  We highly recommend upgrading to TeX version 3.141
1815or better.  If that isn't possible, there is a patch in
1816`texinfo/tex3patch' that will modify `texinfo/texinfo.tex' to work
1817around this problem.
1818
1819 * New features
1820
1821GDB now supports array constants that can be used in expressions typed in by
1822the user.  The syntax is `{element, element, ...}'.  Ie: you can now type
1823`print {1, 2, 3}', and it will build up an array in memory malloc'd in
1824the target program.
1825
1826The new directory `gdb/sparclite' contains a program that demonstrates
1827how the sparc-stub.c remote stub runs on a Fujitsu SPARClite processor.
1828
1829 * New native hosts supported
1830
1831HP/PA-RISC under HPUX using GNU tools	hppa1.1-hp-hpux
1832386 CPUs running SCO Unix 3.2v4		i386-unknown-sco3.2v4
1833
1834 * New targets supported
1835
1836AMD 29k family via UDI			a29k-amd-udi  or  udi29k
1837
1838 * New file formats supported
1839
1840BFD now supports reading HP/PA-RISC executables (SOM file format?),
1841HPUX core files, and SCO 3.2v2 core files.
1842
1843 * Major bug fixes
1844
1845Attaching to processes now works again; thanks for the many bug reports.
1846
1847We have also stomped on a bunch of core dumps caused by
1848printf_filtered("%s") problems.
1849
1850We eliminated a copyright problem on the rpc and ptrace header files
1851for VxWorks, which was discovered at the last minute during the 4.7
1852release.  You should now be able to build a VxWorks GDB.
1853
1854You can now interrupt gdb while an attached process is running.  This
1855will cause the attached process to stop, and give control back to GDB.
1856
1857We fixed problems caused by using too many file descriptors
1858for reading symbols from object files and libraries.  This was
1859especially a problem for programs that used many (~100) shared
1860libraries.
1861
1862The `step' command now only enters a subroutine if there is line number
1863information for the subroutine.  Otherwise it acts like the `next'
1864command.  Previously, `step' would enter subroutines if there was
1865any debugging information about the routine.  This avoids problems
1866when using `cc -g1' on MIPS machines.
1867
1868 * Internal improvements
1869
1870GDB's internal interfaces have been improved to make it easier to support
1871debugging of multiple languages in the future.
1872
1873GDB now uses a common structure for symbol information internally.
1874Minimal symbols (derived from linkage symbols in object files), partial
1875symbols (from a quick scan of debug information), and full symbols
1876contain a common subset of information, making it easier to write
1877shared code that handles any of them.
1878
1879 * New command line options
1880
1881We now accept --silent as an alias for --quiet.
1882
1883 * Mmalloc licensing
1884
1885The memory-mapped-malloc library is now licensed under the GNU Library
1886General Public License.
1887
1888*** Changes in GDB-4.7:
1889
1890 * Host/native/target split
1891
1892GDB has had some major internal surgery to untangle the support for
1893hosts and remote targets.  Now, when you configure GDB for a remote
1894target, it will no longer load in all of the support for debugging
1895local programs on the host.  When fully completed and tested, this will
1896ensure that arbitrary host/target combinations are possible.
1897
1898The primary conceptual shift is to separate the non-portable code in
1899GDB into three categories.  Host specific code is required any time GDB
1900is compiled on that host, regardless of the target.  Target specific
1901code relates to the peculiarities of the target, but can be compiled on
1902any host.  Native specific code is everything else:  it can only be
1903built when the host and target are the same system.  Child process
1904handling and core file support are two common `native' examples.
1905
1906GDB's use of /proc for controlling Unix child processes is now cleaner.
1907It has been split out into a single module under the `target_ops' vector,
1908plus two native-dependent functions for each system that uses /proc.
1909
1910 * New hosts supported
1911
1912HP/Apollo 68k (under the BSD domain)	m68k-apollo-bsd  or  apollo68bsd
1913386 CPUs running various BSD ports	i386-unknown-bsd  or  386bsd
1914386 CPUs running SCO Unix		i386-unknown-scosysv322  or  i386sco
1915
1916 * New targets supported
1917
1918Fujitsu SPARClite 			sparclite-fujitsu-none  or  sparclite
191968030 and CPU32				m68030-*-*, m68332-*-*
1920
1921 * New native hosts supported
1922
1923386 CPUs running various BSD ports	i386-unknown-bsd  or  386bsd
1924    (386bsd is not well tested yet)
1925386 CPUs running SCO Unix		i386-unknown-scosysv322  or  sco
1926
1927 * New file formats supported
1928
1929BFD now supports COFF files for the Zilog Z8000 microprocessor.  It
1930supports reading of `a.out.adobe' object files, which are an a.out
1931format extended with minimal information about multiple sections.
1932
1933 * New commands
1934
1935`show copying' is the same as the old `info copying'.
1936`show warranty' is the same as `info warrantee'.
1937These were renamed for consistency.  The old commands continue to work.
1938
1939`info handle' is a new alias for `info signals'.
1940
1941You can now define pre-command hooks, which attach arbitrary command
1942scripts to any command.  The commands in the hook will be executed
1943prior to the user's command.  You can also create a hook which will be
1944executed whenever the program stops.  See gdb.texinfo.
1945
1946 * C++ improvements
1947
1948We now deal with Cfront style name mangling, and can even extract type
1949info from mangled symbols.  GDB can automatically figure out which
1950symbol mangling style your C++ compiler uses.
1951
1952Calling of methods and virtual functions has been improved as well.
1953
1954 * Major bug fixes
1955
1956The crash that occured when debugging Sun Ansi-C compiled binaries is
1957fixed.  This was due to mishandling of the extra N_SO stabs output
1958by the compiler.
1959
1960We also finally got Ultrix 4.2 running in house, and fixed core file
1961support, with help from a dozen people on the net.
1962
1963John M. Farrell discovered that the reason that single-stepping was so
1964slow on all of the Mips based platforms (primarily SGI and DEC) was
1965that we were trying to demangle and lookup a symbol used for internal
1966purposes on every instruction that was being stepped through.  Changing
1967the name of that symbol so that it couldn't be mistaken for a C++
1968mangled symbol sped things up a great deal.
1969
1970Rich Pixley sped up symbol lookups in general by getting much smarter
1971about when C++ symbol mangling is necessary.  This should make symbol
1972completion (TAB on the command line) much faster.  It's not as fast as
1973we'd like, but it's significantly faster than gdb-4.6.
1974
1975 * AMD 29k support
1976
1977A new user controllable variable 'call_scratch_address' can
1978specify the location of a scratch area to be used when GDB
1979calls a function in the target.  This is necessary because the
1980usual method of putting the scratch area on the stack does not work
1981in systems that have separate instruction and data spaces.
1982
1983We integrated changes to support the 29k UDI (Universal Debugger
1984Interface), but discovered at the last minute that we didn't have all
1985of the appropriate copyright paperwork.  We are working with AMD to
1986resolve this, and hope to have it available soon.
1987
1988 * Remote interfaces
1989
1990We have sped up the remote serial line protocol, especially for targets
1991with lots of registers.  It now supports a new `expedited status' ('T')
1992message which can be used in place of the existing 'S' status message.
1993This allows the remote stub to send only the registers that GDB
1994needs to make a quick decision about single-stepping or conditional
1995breakpoints, eliminating the need to fetch the entire register set for
1996each instruction being stepped through.
1997
1998The GDB remote serial protocol now implements a write-through cache for
1999registers, only re-reading the registers if the target has run.
2000
2001There is also a new remote serial stub for SPARC processors.  You can
2002find it in gdb-4.7/gdb/sparc-stub.c.  This was written to support the
2003Fujitsu SPARClite processor, but will run on any stand-alone SPARC
2004processor with a serial port.
2005
2006 * Configuration
2007
2008Configure.in files have become much easier to read and modify.  A new
2009`table driven' format makes it more obvious what configurations are
2010supported, and what files each one uses.
2011
2012 * Library changes
2013
2014There is a new opcodes library which will eventually contain all of the
2015disassembly routines and opcode tables.  At present, it only contains
2016Sparc and Z8000 routines.  This will allow the assembler, debugger, and
2017disassembler (binutils/objdump) to share these routines.
2018
2019The libiberty library is now copylefted under the GNU Library General
2020Public License.  This allows more liberal use, and was done so libg++
2021can use it.  This makes no difference to GDB, since the Library License
2022grants all the rights from the General Public License.
2023
2024 * Documentation
2025
2026The file gdb-4.7/gdb/doc/stabs.texinfo is a (relatively) complete
2027reference to the stabs symbol info used by the debugger.  It is (as far
2028as we know) the only published document on this fascinating topic.  We
2029encourage you to read it, compare it to the stabs information on your
2030system, and send improvements on the document in general (to
2031bug-gdb@prep.ai.mit.edu).
2032
2033And, of course, many bugs have been fixed.
2034
2035
2036*** Changes in GDB-4.6:
2037
2038 * Better support for C++ function names
2039
2040GDB now accepts as input the "demangled form" of C++ overloaded function
2041names and member function names, and can do command completion on such names
2042(using TAB, TAB-TAB, and ESC-?).  The names have to be quoted with a pair of
2043single quotes.  Examples are 'func (int, long)' and 'obj::operator==(obj&)'.
2044Make use of command completion, it is your friend.
2045
2046GDB also now accepts a variety of C++ mangled symbol formats.  They are
2047the GNU g++ style, the Cfront (ARM) style, and the Lucid (lcc) style.
2048You can tell GDB which format to use by doing a 'set demangle-style {gnu,
2049lucid, cfront, auto}'.  'gnu' is the default.  Do a 'set demangle-style foo'
2050for the list of formats.
2051
2052 * G++ symbol mangling problem
2053
2054Recent versions of gcc have a bug in how they emit debugging information for
2055C++ methods (when using dbx-style stabs).  The file 'gcc.patch' (in this
2056directory) can be applied to gcc to fix the problem.  Alternatively, if you
2057can't fix gcc, you can #define GCC_MANGLE_BUG when compling gdb/symtab.c. The
2058usual symptom is difficulty with setting breakpoints on methods.  GDB complains
2059about the method being non-existent.  (We believe that version 2.2.2 of GCC has
2060this problem.)
2061
2062 * New 'maintenance' command
2063
2064All of the commands related to hacking GDB internals have been moved out of
2065the main command set, and now live behind the 'maintenance' command.  This
2066can also be abbreviated as 'mt'.  The following changes were made:
2067
2068	dump-me ->		maintenance dump-me
2069	info all-breakpoints ->	maintenance info breakpoints
2070	printmsyms ->		maintenance print msyms
2071	printobjfiles ->	maintenance print objfiles
2072	printpsyms ->		maintenance print psymbols
2073	printsyms ->		maintenance print symbols
2074
2075The following commands are new:
2076
2077	maintenance demangle	Call internal GDB demangler routine to
2078				demangle a C++ link name and prints the result.
2079	maintenance print type	Print a type chain for a given symbol
2080
2081 * Change to .gdbinit file processing
2082
2083We now read the $HOME/.gdbinit file before processing the argv arguments
2084(e.g. reading symbol files or core files).  This allows global parameters to
2085be set, which will apply during the symbol reading.  The ./.gdbinit is still
2086read after argv processing.
2087
2088 * New hosts supported
2089
2090Solaris-2.0 !!!				sparc-sun-solaris2  or  sun4sol2
2091
2092GNU/Linux support			i386-unknown-linux  or  linux
2093
2094We are also including code to support the HP/PA running BSD and HPUX.  This
2095is almost guaranteed not to work, as we didn't have time to test or build it
2096for this release.  We are including it so that the more adventurous (or
2097masochistic) of you can play with it.  We also had major problems with the
2098fact that the compiler that we got from HP doesn't support the -g option.
2099It costs extra.
2100
2101 * New targets supported
2102
2103Hitachi H8/300				h8300-hitachi-hms  or  h8300hms
2104
2105 * More smarts about finding #include files
2106
2107GDB now remembers the compilation directory for all include files, and for
2108all files from which C is generated (like yacc and lex sources).  This
2109greatly improves GDB's ability to find yacc/lex sources, and include files,
2110especially if you are debugging your program from a directory different from
2111the one that contains your sources.
2112
2113We also fixed a bug which caused difficulty with listing and setting
2114breakpoints in include files which contain C code.  (In the past, you had to
2115try twice in order to list an include file that you hadn't looked at before.)
2116
2117 * Interesting infernals change
2118
2119GDB now deals with arbitrary numbers of sections, where the symbols for each
2120section must be relocated relative to that section's landing place in the
2121target's address space.  This work was needed to support ELF with embedded
2122stabs used by Solaris-2.0.
2123
2124 * Bug fixes (of course!)
2125
2126There have been loads of fixes for the following things:
2127	mips, rs6000, 29k/udi, m68k, g++, type handling, elf/dwarf, m88k,
2128	i960, stabs, DOS(GO32), procfs, etc...
2129
2130See the ChangeLog for details.
2131
2132*** Changes in GDB-4.5:
2133
2134 * New machines supported (host and target)
2135
2136IBM RS6000 running AIX			rs6000-ibm-aix	or rs6000
2137
2138SGI Irix-4.x				mips-sgi-irix4	or iris4
2139
2140 * New malloc package
2141
2142GDB now uses a new memory manager called mmalloc, based on gmalloc.
2143Mmalloc is capable of handling mutiple heaps of memory.  It is also
2144capable of saving a heap to a file, and then mapping it back in later.
2145This can be used to greatly speedup the startup of GDB by using a
2146pre-parsed symbol table which lives in a mmalloc managed heap.  For
2147more details, please read mmalloc/mmalloc.texi.
2148
2149 * info proc
2150
2151The 'info proc' command (SVR4 only) has been enhanced quite a bit.  See
2152'help info proc' for details.
2153
2154 * MIPS ecoff symbol table format
2155
2156The code that reads MIPS symbol table format is now supported on all hosts.
2157Thanks to MIPS for releasing the sym.h and symconst.h files to make this
2158possible.
2159
2160 * File name changes for MS-DOS
2161
2162Many files in the config directories have been renamed to make it easier to
2163support GDB on MS-DOSe systems (which have very restrictive file name
2164conventions :-( ).  MS-DOSe host support (under DJ Delorie's GO32
2165environment) is close to working but has some remaining problems.  Note
2166that debugging of DOS programs is not supported, due to limitations
2167in the ``operating system'', but it can be used to host cross-debugging.
2168
2169 * Cross byte order fixes
2170
2171Many fixes have been made to support cross debugging of Sparc and MIPS
2172targets from hosts whose byte order differs.
2173
2174 * New -mapped and -readnow options
2175
2176If memory-mapped files are available on your system through the 'mmap'
2177system call, you can use the -mapped option on the `file' or
2178`symbol-file' commands to cause GDB to write the symbols from your
2179program into a reusable file.  If the program you are debugging is
2180called `/path/fred', the mapped symbol file will be `./fred.syms'.
2181Future GDB debugging sessions will notice the presence of this file,
2182and will quickly map in symbol information from it, rather than reading
2183the symbol table from the executable program.  Using the '-mapped'
2184option in a GDB `file' or `symbol-file' command has the same effect as
2185starting GDB with the '-mapped' command-line option.
2186
2187You can cause GDB to read the entire symbol table immediately by using
2188the '-readnow' option with any of the commands that load symbol table
2189information (or on the GDB command line).  This makes the command
2190slower, but makes future operations faster.
2191
2192The -mapped and -readnow options are typically combined in order to
2193build a `fred.syms' file that contains complete symbol information.
2194A simple GDB invocation to do nothing but build a `.syms' file for future
2195use is:
2196
2197	gdb -batch -nx -mapped -readnow programname
2198
2199The `.syms' file is specific to the host machine on which GDB is run.
2200It holds an exact image of GDB's internal symbol table.  It cannot be
2201shared across multiple host platforms.
2202
2203 * longjmp() handling
2204
2205GDB is now capable of stepping and nexting over longjmp(), _longjmp(), and
2206siglongjmp() without losing control.  This feature has not yet been ported to
2207all systems.  It currently works on many 386 platforms, all MIPS-based
2208platforms (SGI, DECstation, etc), and Sun3/4.
2209
2210 * Solaris 2.0
2211
2212Preliminary work has been put in to support the new Solaris OS from Sun.  At
2213this time, it can control and debug processes, but it is not capable of
2214reading symbols.
2215
2216 * Bug fixes
2217
2218As always, many many bug fixes.  The major areas were with g++, and mipsread.
2219People using the MIPS-based platforms should experience fewer mysterious
2220crashes and trashed symbol tables.
2221
2222*** Changes in GDB-4.4:
2223
2224 * New machines supported (host and target)
2225
2226SCO Unix on i386 IBM PC clones		i386-sco-sysv	or  i386sco
2227	(except core files)
2228BSD Reno on Vax				vax-dec-bsd
2229Ultrix on Vax				vax-dec-ultrix
2230
2231 * New machines supported (target)
2232
2233AMD 29000 embedded, using EBMON		a29k-none-none
2234
2235 * C++ support
2236
2237GDB continues to improve its handling of C++.  `References' work better.
2238The demangler has also been improved, and now deals with symbols mangled as
2239per the Annotated C++ Reference Guide.
2240
2241GDB also now handles `stabs' symbol information embedded in MIPS
2242`ecoff' symbol tables.  Since the ecoff format was not easily
2243extensible to handle new languages such as C++, this appeared to be a
2244good way to put C++ debugging info into MIPS binaries.  This option
2245will be supported in the GNU C compiler, version 2, when it is
2246released.
2247
2248 * New features for SVR4
2249
2250GDB now handles SVR4 shared libraries, in the same fashion as SunOS
2251shared libraries.  Debugging dynamically linked programs should present
2252only minor differences from debugging statically linked programs.
2253
2254The `info proc' command will print out information about any process
2255on an SVR4 system (including the one you are debugging).  At the moment,
2256it prints the address mappings of the process.
2257
2258If you bring up GDB on another SVR4 system, please send mail to
2259bug-gdb@prep.ai.mit.edu to let us know what changes were reqired (if any).
2260
2261 * Better dynamic linking support in SunOS
2262
2263Reading symbols from shared libraries which contain debugging symbols
2264now works properly.  However, there remain issues such as automatic
2265skipping of `transfer vector' code during function calls, which
2266make it harder to debug code in a shared library, than to debug the
2267same code linked statically.
2268
2269 * New Getopt
2270
2271GDB is now using the latest `getopt' routines from the FSF.  This
2272version accepts the -- prefix for options with long names.  GDB will
2273continue to accept the old forms (-option and +option) as well.
2274Various single letter abbreviations for options have been explicity
2275added to the option table so that they won't get overshadowed in the
2276future by other options that begin with the same letter.
2277
2278 * Bugs fixed
2279
2280The `cleanup_undefined_types' bug that many of you noticed has been squashed.
2281Many assorted bugs have been handled.  Many more remain to be handled.
2282See the various ChangeLog files (primarily in gdb and bfd) for details.
2283
2284
2285*** Changes in GDB-4.3:
2286
2287 * New machines supported (host and target)
2288
2289Amiga 3000 running Amix			m68k-cbm-svr4	or  amix
2290NCR 3000 386 running SVR4		i386-ncr-svr4	or  ncr3000
2291Motorola Delta 88000 running Sys V	m88k-motorola-sysv  or  delta88
2292
2293 * Almost SCO Unix support
2294
2295We had hoped to support:
2296SCO Unix on i386 IBM PC clones		i386-sco-sysv	or  i386sco
2297(except for core file support), but we discovered very late in the release
2298that it has problems with process groups that render gdb unusable.  Sorry
2299about that.  I encourage people to fix it and post the fixes.
2300
2301 * Preliminary ELF and DWARF support
2302
2303GDB can read ELF object files on System V Release 4, and can handle
2304debugging records for C, in DWARF format, in ELF files.  This support
2305is preliminary.  If you bring up GDB on another SVR4 system, please
2306send mail to bug-gdb@prep.ai.mit.edu to let us know what changes were
2307reqired (if any).
2308
2309 * New Readline
2310
2311GDB now uses the latest `readline' library.  One user-visible change
2312is that two tabs will list possible command completions, which previously
2313required typing M-? (meta-question mark, or ESC ?).
2314
2315 * Bugs fixed
2316
2317The `stepi' bug that many of you noticed has been squashed.
2318Many bugs in C++ have been handled.  Many more remain to be handled.
2319See the various ChangeLog files (primarily in gdb and bfd) for details.
2320
2321 * State of the MIPS world (in case you wondered):
2322
2323GDB can understand the symbol tables emitted by the compilers
2324supplied by most vendors of MIPS-based machines, including DEC.  These
2325symbol tables are in a format that essentially nobody else uses.
2326
2327Some versions of gcc come with an assembler post-processor called
2328mips-tfile.  This program is required if you want to do source-level
2329debugging of gcc-compiled programs.  I believe FSF does not ship
2330mips-tfile with gcc version 1, but it will eventually come with gcc
2331version 2.
2332
2333Debugging of g++ output remains a problem.  g++ version 1.xx does not
2334really support it at all.  (If you're lucky, you should be able to get
2335line numbers and stack traces to work, but no parameters or local
2336variables.)  With some work it should be possible to improve the
2337situation somewhat.
2338
2339When gcc version 2 is released, you will have somewhat better luck.
2340However, even then you will get confusing results for inheritance and
2341methods.
2342
2343We will eventually provide full debugging of g++ output on
2344DECstations.  This will probably involve some kind of stabs-in-ecoff
2345encapulation, but the details have not been worked out yet.
2346
2347
2348*** Changes in GDB-4.2:
2349
2350 *  Improved configuration
2351
2352Only one copy of `configure' exists now, and it is not self-modifying.
2353Porting BFD is simpler.
2354
2355 *  Stepping improved
2356
2357The `step' and `next' commands now only stop at the first instruction
2358of a source line.  This prevents the multiple stops that used to occur
2359in switch statements, for-loops, etc.  `Step' continues to stop if a
2360function that has debugging information is called within the line.
2361
2362 *  Bug fixing
2363
2364Lots of small bugs fixed.  More remain.
2365
2366 *  New host supported (not target)
2367
2368Intel 386 PC clone running Mach		i386-none-mach
2369
2370
2371*** Changes in GDB-4.1:
2372
2373 *  Multiple source language support
2374
2375GDB now has internal scaffolding to handle several source languages.
2376It determines the type of each source file from its filename extension,
2377and will switch expression parsing and number formatting to match the
2378language of the function in the currently selected stack frame.
2379You can also specifically set the language to be used, with
2380`set language c' or `set language modula-2'.
2381
2382 *  GDB and Modula-2
2383
2384GDB now has preliminary support for the GNU Modula-2 compiler,
2385currently under development at the State University of New York at
2386Buffalo.  Development of both GDB and the GNU Modula-2 compiler will
2387continue through the fall of 1991 and into 1992.
2388
2389Other Modula-2 compilers are currently not supported, and attempting to
2390debug programs compiled with them will likely result in an error as the
2391symbol table is read.  Feel free to work on it, though!
2392
2393There are hooks in GDB for strict type checking and range checking,
2394in the `Modula-2 philosophy', but they do not currently work.
2395
2396 * set write on/off
2397
2398GDB can now write to executable and core files (e.g. patch
2399a variable's value).   You must turn this switch on, specify
2400the file ("exec foo" or "core foo"), *then* modify it, e.g.
2401by assigning a new value to a variable.  Modifications take
2402effect immediately.
2403
2404 * Automatic SunOS shared library reading
2405
2406When you run your program, GDB automatically determines where its
2407shared libraries (if any) have been loaded, and reads their symbols.
2408The `share' command is no longer needed.  This also works when
2409examining core files.
2410
2411 * set listsize
2412
2413You can specify the number of lines that the `list' command shows.
2414The default is 10.
2415
2416 * New machines supported (host and target)
2417
2418SGI Iris (MIPS) running Irix V3:  	mips-sgi-irix   or  iris
2419Sony NEWS (68K) running NEWSOS 3.x:	m68k-sony-sysv	or  news
2420Ultracomputer (29K) running Sym1:	a29k-nyu-sym1	or  ultra3
2421
2422 * New hosts supported (not targets)
2423
2424IBM RT/PC:				romp-ibm-aix 	or  rtpc
2425
2426 * New targets supported (not hosts)
2427
2428AMD 29000 embedded with COFF		a29k-none-coff
2429AMD 29000 embedded with a.out		a29k-none-aout
2430Ultracomputer remote kernel debug	a29k-nyu-kern
2431
2432 * New remote interfaces
2433
2434AMD 29000 Adapt
2435AMD 29000 Minimon
2436
2437
2438*** Changes in GDB-4.0:
2439
2440 *  New Facilities
2441
2442Wide output is wrapped at good places to make the output more readable.
2443
2444Gdb now supports cross-debugging from a host machine of one type to a
2445target machine of another type.  Communication with the target system
2446is over serial lines.  The ``target'' command handles connecting to the
2447remote system; the ``load'' command will download a program into the
2448remote system.  Serial stubs for the m68k and i386 are provided.  Gdb
2449also supports debugging of realtime processes running under VxWorks,
2450using SunRPC Remote Procedure Calls over TCP/IP to talk to a debugger
2451stub on the target system.
2452
2453New CPUs supported include the AMD 29000 and Intel 960.
2454
2455GDB now reads object files and symbol tables via a ``binary file''
2456library, which allows a single copy of GDB to debug programs of multiple
2457object file types such as a.out and coff.
2458
2459There is now a GDB reference card in "doc/refcard.tex".  (Make targets
2460refcard.dvi and refcard.ps are available to format it).
2461
2462
2463 *  Control-Variable user interface simplified
2464
2465All variables that control the operation of the debugger can be set
2466by the ``set'' command, and displayed by the ``show'' command.
2467
2468For example, ``set prompt new-gdb=>'' will change your prompt to new-gdb=>.
2469``Show prompt'' produces the response:
2470Gdb's prompt is new-gdb=>.
2471
2472What follows are the NEW set commands.  The command ``help set'' will
2473print a complete list of old and new set commands.  ``help set FOO''
2474will give a longer description of the variable FOO.  ``show'' will show
2475all of the variable descriptions and their current settings.
2476
2477confirm on/off:  Enables warning questions for operations that are
2478		 hard to recover from, e.g. rerunning the program while
2479		 it is already running.  Default is ON.
2480
2481editing on/off:  Enables EMACS style command line editing
2482                 of input.  Previous lines can be recalled with
2483		 control-P, the current line can be edited with control-B,
2484		 you can search for commands with control-R, etc.
2485		 Default is ON.
2486
2487history filename NAME:  NAME is where the gdb command history
2488			will be stored.  The default is .gdb_history,
2489			or the value of the environment variable
2490			GDBHISTFILE.
2491
2492history size N:  The size, in commands, of the command history.  The
2493		 default is 256, or the value of the environment variable
2494		 HISTSIZE.
2495
2496history save on/off: If this value is set to ON, the history file will
2497		      be saved after exiting gdb.  If set to OFF, the
2498		      file will not be saved.  The default is OFF.
2499
2500history expansion on/off: If this value is set to ON, then csh-like
2501			  history expansion will be performed  on
2502			  command line input.  The default is OFF.
2503
2504radix N:  Sets the default radix for input and output.  It can be set
2505	  to 8, 10, or 16.  Note that the argument to "radix" is interpreted
2506	  in the current radix, so "set radix 10" is always a no-op.
2507
2508height N: This integer value is the number of lines on a page. Default
2509          is 24, the current `stty rows'' setting, or the ``li#''
2510	  setting from the termcap entry matching the environment
2511	  variable TERM.
2512
2513width N:  This integer value is the number of characters on a line.
2514	  Default is 80, the current `stty cols'' setting, or the ``co#''
2515	  setting from the termcap entry matching the environment
2516	  variable TERM.
2517
2518Note: ``set screensize'' is obsolete. Use ``set height'' and
2519``set width'' instead.
2520
2521print address on/off:  Print memory addresses in various command displays,
2522		      such as stack traces and structure values.  Gdb looks
2523		      more ``symbolic'' if you turn this off; it looks more
2524		      ``machine level'' with it on.  Default is ON.
2525
2526print array on/off:  Prettyprint arrays.  New convenient format!  Default
2527                    is OFF.
2528
2529print demangle on/off:   Print C++ symbols in "source" form if on,
2530			"raw" form if off.
2531
2532print asm-demangle on/off:  Same, for assembler level printouts
2533			like instructions.
2534
2535print vtbl on/off:  Prettyprint C++ virtual function tables.  Default is OFF.
2536
2537
2538 *  Support for Epoch Environment.
2539
2540The epoch environment is a version of Emacs v18 with windowing.  One
2541new command, ``inspect'', is identical to ``print'', except that if you
2542are running in the epoch environment, the value is printed in its own
2543window.
2544
2545
2546 *  Support for Shared Libraries
2547
2548GDB can now debug programs and core files that use SunOS shared libraries.
2549Symbols from a shared library cannot be referenced
2550before the shared library has been linked with the program (this
2551happens after you type ``run'' and before the function main() is entered).
2552At any time after this linking (including when examining core files
2553from dynamically linked programs), gdb reads the symbols from each
2554shared library when you type the ``sharedlibrary'' command.
2555It can be abbreviated ``share''.
2556
2557sharedlibrary REGEXP:  Load shared object library symbols for files
2558                       matching a unix regular expression.  No argument
2559		       indicates to load symbols for all shared libraries.
2560
2561info sharedlibrary:  Status of loaded shared libraries.
2562
2563
2564 *  Watchpoints
2565
2566A watchpoint stops execution of a program whenever the value of an
2567expression changes.  Checking for this slows down execution
2568tremendously whenever you are in the scope of the expression, but is
2569quite useful for catching tough ``bit-spreader'' or pointer misuse
2570problems.  Some machines such as the 386 have hardware for doing this
2571more quickly, and future versions of gdb will use this hardware.
2572
2573watch EXP:  Set a watchpoint (breakpoint) for an expression.
2574
2575info watchpoints:  Information about your watchpoints.
2576
2577delete N:   Deletes watchpoint number N (same as breakpoints).
2578disable N:  Temporarily turns off watchpoint number N (same as breakpoints).
2579enable N:   Re-enables watchpoint number N (same as breakpoints).
2580
2581
2582 *  C++ multiple inheritance
2583
2584When used with a GCC version 2 compiler, GDB supports multiple inheritance
2585for C++ programs.
2586
2587 *  C++ exception handling
2588
2589Gdb now supports limited C++ exception handling.  Besides the existing
2590ability to breakpoint on an exception handler, gdb can breakpoint on
2591the raising of an exception (before the stack is peeled back to the
2592handler's context).
2593
2594catch FOO:  If there is a FOO exception handler in the dynamic scope,
2595	    set a breakpoint to catch exceptions which may be raised there.
2596	    Multiple exceptions (``catch foo bar baz'') may be caught.
2597
2598info catch:  Lists all exceptions which may be caught in the
2599             current stack frame.
2600
2601
2602 *  Minor command changes
2603
2604The command ``call func (arg, arg, ...)'' now acts like the print
2605command, except it does not print or save a value if the function's result
2606is void.  This is similar to dbx usage.
2607
2608The ``up'' and ``down'' commands now always print the frame they end up
2609at; ``up-silently'' and `down-silently'' can be used in scripts to change
2610frames without printing.
2611
2612 *  New directory command
2613
2614'dir' now adds directories to the FRONT of the source search path.
2615The path starts off empty.  Source files that contain debug information
2616about the directory in which they were compiled can be found even
2617with an empty path; Sun CC and GCC include this information.  If GDB can't
2618find your source file in the current directory, type "dir .".
2619
2620 * Configuring GDB for compilation
2621
2622For normal use, type ``./configure host''.  See README or gdb.texinfo
2623for more details.
2624
2625GDB now handles cross debugging.  If you are remotely debugging between
2626two different machines, type ``./configure host -target=targ''.
2627Host is the machine where GDB will run; targ is the machine
2628where the program that you are debugging will run.
2629