(ORIG: date: 1991/09/21 02:01:41; author: pesch; state: Exp; lines: +175 -110)
authorRoland Pesch <pesch@cygnus>
Wed, 9 Oct 1991 00:27:09 +0000 (00:27 +0000)
committerRoland Pesch <pesch@cygnus>
Wed, 9 Oct 1991 00:27:09 +0000 (00:27 +0000)
Update configs table.

gdb/doc/gdb.texinfo

index fe8263c6aec4ddec6cca3c3ad2eb84d64b7ca4e7..4c4e1e2b32c71be304b64bde6827141fdd61856a 100644 (file)
@@ -31,7 +31,7 @@ _include__(gdbVN.m4)
 @c
 @syncodeindex ky cp
 @c FOR UPDATES LEADING TO THIS DRAFT, GDB CHANGELOG CONSULTED BETWEEN:
-@c Thu Aug 22 14:05:47 1991  Stu Grossman  (grossman at cygint.cygnus.com)
+@c Fri Sep 20 16:10:52 1991  John Gilmore  (gnu at cygnus.com)
 @c Sat Dec 22 02:51:40 1990  John Gilmore  (gnu at cygint)
 @ifinfo
 This file documents the GNU debugger _GDBN__.
@@ -277,6 +277,7 @@ Altering Execution
 * Signaling::                   Giving the Program a Signal
 * Returning::                   Returning from a Function
 * Calling::                     Calling your Program's Functions
+* Patching::                    Patching your Program
 
 _GDBN__'s Files
 
@@ -445,7 +446,8 @@ support for the Gould NP1 and Gould Powernode.  Pace Willison
 contributed Intel 386 support.  Jay Vosburgh contributed Symmetry
 support.
 
-Rich Schaefer helped with support of SunOS shared libraries.
+Rich Schaefer and Peter Schauer helped with support of SunOS shared
+libraries.
 
 Jay Fenlason and Roland McGrath ensured that GDB and GAS agree about
 several machine instruction sets.
@@ -598,7 +600,10 @@ Let's use _GDBN__ to try to see what's going on.
 
 @smallexample
 $ @i{_GDBP__ m4}
-Reading symbol data from m4...done.
+GDB is free software and you are welcome to distribute copies of it
+ under certain conditions; type "info copying" to see the conditions.
+There is absolutely no warranty for GDB; type "info warranty" for details.
+GDB _GDB_VN__, Copyright 1991 Free Software Foundation, Inc...
 (_GDBP__) 
 @end smallexample
 
@@ -924,8 +929,7 @@ Files}.
 @item -quiet
 @itemx -q
 ``Quiet''.  Do not print the introductory and copyright messages.  These
-messages are also suppressed in batch mode, or if an executable file name is
-specified on the _GDBN__ command line.
+messages are also suppressed in batch mode.
 
 @item -batch
 Run in batch mode.  Exit with status @code{0} after processing all the command
@@ -1733,7 +1737,7 @@ breakpoints on overloaded functions that are not members of any special
 classes.
 
 @kindex info breakpoints
-@kindex $_
+@cindex @code{$_} and @code{info breakpoints}
 @item info breakpoints @r{[}@var{n}@r{]}
 @item info break @r{[}@var{n}@r{]}
 Print a list of all breakpoints (but not watchpoints) set and not
@@ -2209,6 +2213,9 @@ Use the "delete" command to delete unwanted breakpoints.
 
 @c FIXME: "cannot insert breakpoints" error, v unclear.  
 @c        Q in pending mail to Gilmore. ---pesch@cygnus.com, 26mar91
+@c        some light may be shed by looking at instances of 
+@c        ONE_PROCESS_WRITETEXT.  But error seems possible otherwise
+@c        too.  pesch, 20sep91
 Under some operating systems, breakpoints cannot be used in a program if
 any other process is running that program.  In this situation,
 attempting to run or continue a program with a breakpoint causes _GDBN__
@@ -2791,22 +2798,37 @@ Here are the forms of the @code{list} command most commonly used:
 
 @table @code
 @item list @var{linenum}
-Print ten lines centered around line number @var{linenum} in the
+Print lines centered around line number @var{linenum} in the
 current source file.
 
 @item list @var{function}
-Print ten lines centered around the beginning of function
+Print lines centered around the beginning of function
 @var{function}.
 
 @item list
-Print ten more lines.  If the last lines printed were printed with a
-@code{list} command, this prints ten lines following the last lines
+Print more lines.  If the last lines printed were printed with a
+@code{list} command, this prints lines following the last lines
 printed; however, if the last line printed was a solitary line printed
-as part of displaying a stack frame (@pxref{Stack}), this prints ten
+as part of displaying a stack frame (@pxref{Stack}), this prints 
 lines centered around that line.
 
 @item list -
-Print ten lines just before the lines last printed.
+Print lines just before the lines last printed.
+@end table
+
+By default, _GDBN__ prints ten source lines with any of these forms of
+the @code{list} command.  You can change this using @code{set listsize}:
+
+@table @code
+@item set listsize @var{count}
+@kindex set listsize
+Make the @code{list} command display @var{count} source lines (unless
+the @code{list} argument explicitly specifies some other number).
+
+@item show listsize
+@kindex show listsize
+Display the number of lines that @code{list} will currently display by
+default. 
 @end table
 
 Repeating a @code{list} command with @key{RET} discards the argument,
@@ -2823,23 +2845,23 @@ Here is a complete description of the possible arguments for @code{list}:
 
 @table @code
 @item list @var{linespec}
-Print ten lines centered around the line specified by @var{linespec}.
+Print lines centered around the line specified by @var{linespec}.
 
 @item list @var{first},@var{last}
 Print lines from @var{first} to @var{last}.  Both arguments are
 linespecs.
 
 @item list ,@var{last}
-Print ten lines ending with @var{last}.
+Print lines ending with @var{last}.
 
 @item list @var{first},
-Print ten lines starting with @var{first}.
+Print lines starting with @var{first}.
 
 @item list +
-Print ten lines just after the lines last printed.
+Print lines just after the lines last printed.
 
 @item list -
-Print ten lines just before the lines last printed.
+Print lines just before the lines last printed.
 
 @item list
 As described in the preceding table.
@@ -3005,7 +3027,7 @@ We can also inquire (using @code{*@var{addr}} as the form for
 Line 926 of "builtin.c" starts at pc 0x63e4 and ends at 0x6404.
 @end smallexample
 
-@kindex $_
+@cindex @code{$_} and @code{info line}
 After @code{info line}, the default address for the @code{x}
 command is changed to the starting address of the line, so that
 @samp{x/i} is sufficient to begin examining the machine code
@@ -3441,8 +3463,7 @@ x/7
 @noindent
 ---where the format and address are allowed to default.
 
-@kindex $_
-@kindex $__
+@cindex @code{$_}, @code{$__}, and value history
 The addresses and contents printed by the @code{x} command are not put
 in the value history because there is often too much of them and they
 would get in the way.  Instead, _GDBN__ makes these values available for
@@ -3897,14 +3918,16 @@ values likely to be useful.
 
 @table @code
 @item $_
+@kindex $_
 The variable @code{$_} is automatically set by the @code{x} command to
 the last address examined (@pxref{Memory}).  Other commands which
 provide a default address for @code{x} to examine also set @code{$_}
 to that address; these commands include @code{info line} and @code{info
-breakpoint}.  @code{$_}'s type is @code{void *} except when set by the
+breakpoint}.  The type of @code{$_} is @code{void *} except when set by the
 @code{x} command, in which case it is a pointer to the type of @code{$__}.
 
 @item $__
+@kindex $__
 The variable @code{$__} is automatically set by the @code{x} command
 to the value found in the last address examined.  Its type is chosen
 to match the format in which the data was printed.
@@ -4065,10 +4088,8 @@ defaults to setting the language automatically.
 
 @kindex set language
 To set the language, issue the command @samp{set language @var{lang}},
-where @var{lang} is the name of a language, such as @code{c} or
-@code{m2}, or the extension of a filename written in that language, such
-as @file{.c} or @file{.mod}.  For a list of the supported
-languages, type @samp{set language}.
+where @var{lang} is the name of a language: @code{c} or @code{modula-2}.
+For a list of the supported languages, type @samp{set language}.
 
 Setting the language manually prevents _GDBN__ from updating the working
 language automatically.  This can lead to confusion if you try
@@ -5320,6 +5341,7 @@ or even return prematurely from a function to its caller.
 * Signaling::                   Giving the Program a Signal
 * Returning::                   Returning from a Function
 * Calling::                     Calling your Program's Functions
+* Patching::                    Patching your Program
 @end menu
 
 @node Assignment, Jumping, Altering, Altering
@@ -5486,7 +5508,7 @@ returned.  In contrast, the @code{finish} command (@pxref{Continuing and
 Stepping}) resumes execution until the selected stack frame returns
 naturally.@refill
 
-@node     Calling,  , Returning, Altering
+@node     Calling, Patching, Returning, Altering
 @section Calling your Program's Functions
 
 @cindex calling functions
@@ -5502,6 +5524,39 @@ execute a function from your program, but without cluttering the output
 with @code{void} returned values.  The result is printed and saved in
 the value history, if it is not void.
 
+@node Patching,  , Calling, Altering
+@section Patching your Program
+@cindex patching binaries
+@cindex writing into executables
+@cindex writing into corefiles
+By default, _GDBN__ opens the file containing your program's executable
+code (or the corefile) read-only.  This prevents accidental alterations
+to machine code; but it also prevents you from intentionally patching
+your program's binary.
+
+If you'd like to be able to patch the binary, you can specify that
+explicitly with the @code{set write} command.  For example, you might
+want to turn on internal debugging flags, or even to make emergency
+repairs. 
+
+@table @code
+@item set write on
+@itemx set write off
+@kindex set write
+If you specify @samp{set write on}, _GDBN__ will open executable and
+core files for both reading and writing; if you specify @samp{set write
+off} (the default), _GDBN__ will open them read-only.
+
+If you've already loaded a file, you must load it
+again (using the @code{exec-file} or @code{core-file} command) after
+changing @code{set write}, for your new setting to take effect.
+
+@item show write
+Display whether executable files and core files will be opened for
+writing as well as reading.
+
+@end table
+
 @node _GDBN__ Files, Targets, Altering, Top
 @chapter _GDBN__'s Files
 
@@ -5672,37 +5727,35 @@ All file-specifying commands allow both absolute and relative file names
 as arguments.  _GDBN__ always converts the file name to an absolute path
 name and remembers it that way.
 
-@kindex sharedlibrary
-@kindex share
 @cindex shared libraries
 
-_GDBN__ supports the SunOS shared library format.  Symbols from a shared
-library cannot be referenced before the shared library has been linked
-with the program.  (That is to say, until after you type @code{run} and 
-the function @code{main} has been entered; or when examining core
-files.)  Once the shared library has been linked in, you can use the
-following commands:
+_GDBN__ supports the SunOS shared library format.  _GDBN__ automatically
+loads symbol definitions from shared libraries when you use the
+@code{run} command, or when you examine a core file.  (Before you issue
+the @code{run} command, _GDBN__ won't understand references to a
+function in a shared library, however---unless you're debugging a core
+file).
+@c FIXME: next _GDBN__ release should permit some refs to undef
+@c FIXME...symbols---eg in a break cmd---assuming they're from a shared lib
 
 @table @code
-@item sharedlibrary @var{regex}
-@itemx share @var{regex}
-Load shared object library symbols for files matching a UNIX regular
-expression.  
-
-@item share
-@itemx sharedlibrary
-Load symbols for all shared libraries.
-
 @item info share
 @itemx info sharedlibrary
 @kindex info sharedlibrary
 @kindex info share
-Print the names of the shared libraries which you have loaded with the
-@code{sharedlibrary} command.
-@end table
+Print the names of the shared libraries which are currently loaded.
 
-@code{sharedlibrary} does not repeat automatically when you press
-@key{RET} after using it once.
+@item sharedlibrary @var{regex}
+@itemx share @var{regex}
+@kindex sharedlibrary
+@kindex share
+This is an obsolescent command; you can use it to explicitly
+load shared object library symbols for files matching a UNIX regular
+expression, but as with files loaded automatically, it will only load
+shared libraries required by your program for a core file or after
+typing @code{run}.  If @var{regex} is omitted all shared libraries
+required by your program are loaded.
+@end table
 
 @node Symbol Errors,  , Files, _GDBN__ Files
 @section Errors Reading Symbol Files
@@ -7176,30 +7229,36 @@ prefix'' column ending in a @samp{*} may be followed by a release number.
 ARCHITECTURE  VENDOR        OS prefix
 ------------+-------------+-------------
             |             |
- a29k       | altos       | aix*
- alliant    | aout        | aout
- arm        | apollo      | bout
- c1         | att         | bsd*
- c2         | bout        | coff
- i386       | coff        | ctix*
- i860       | convergent  | dynix*
- i960       | convex      | esix*
- m68000     | dec         | hpux*
- m68k       | encore      | isc*
- m88k       | gould       | mach*
- mips       | hp          | newsos*
- ns32k      | ibm         | nindy*
- pyramid    | intel       | none
- rs6000     | isi         | osf*
- rtpc       | little      | sco*    
- sparc      | mips        | sunos*  
- tahoe      | motorola    | sysv*   
- tron       | ncr         | ultrix* 
- vax        | next        | unos*   
-            | none        | v88r*   
-            | sco         | vms*    
-            | sequent     | vxworks*
-            | sgi         | 
+ 580        | altos       | aix*
+ a29k       | amdahl      | amigados
+ alliant    | aout        | aout    
+ arm        | apollo      | bout    
+ c1         | att         | bsd*    
+ c2         | bull        | coff    
+ cray2      | bcs         | ctix*   
+ h8300      | bout        | dynix*  
+ i386       | cbm         | esix*   
+ i860       | coff        | hpux*   
+ i960       | convergent  | irix*   
+ m68000     | convex      | isc*    
+ m68k       | cray        | kern    
+ m88k       | dec         | mach*   
+ mips       | encore      | newsos* 
+ ns32k      | gould       | nindy*  
+ pyramid    | hp          | none    
+ romp       | ibm         | osf*    
+ rs6000     | intel       | sco*    
+ rtpc       | isi         | sunos*  
+ sparc      | little      | svr4    
+ tahoe      | mips        | sym*    
+ tron       | motorola    | sysv*   
+ vax        | ncr         | ultrix* 
+ xmp        | next        | unicos  
+ ymp        | none        | unos*   
+            | nyu         | uts     
+            | sco         | v88r*   
+            | sequent     | vms*    
+            | sgi         | vxworks*
             | sony        |
             | sun         |
             | unicom      |
@@ -7208,47 +7267,53 @@ ARCHITECTURE  VENDOR        OS prefix
 
 @end example
 @end ifinfo
+@c FIXME: this table is probably screwed in @smallbook.  Try setting
+@c FIXME...smallbook fonts?
 @tex
-\vskip \parskip\vskip \baselineskip
-\halign{\hskip\parindent\tt #\hfil &\qquad#&\tt #\hfil &\qquad#&\tt #\hfil\cr
+%\vskip\parskip
+\vskip \baselineskip
+\halign{\hskip\parindent\tt #\hfil &\qquad#&\tt #\hfil &\qquad#&\tt
+#\hfil &\qquad\qquad\it #\hfil\cr
 {\bf Architecture} &&{\bf Vendor} &&{\bf OS prefix}\cr
-\noalign{\hrule}
+\multispan5\hrulefill\cr
 \cr
- a29k       &&altos       &&aix*\cr
- alliant    &&aout        &&aout\cr
- arm        &&apollo      &&bout\cr
- c1         &&att         &&bsd*\cr
- c2         &&bout        &&coff\cr
- i386       &&coff        &&ctix*\cr
- i860       &&convergent  &&dynix*\cr
- i960       &&convex      &&esix*\cr
- m68000     &&dec         &&hpux*\cr
- m68k       &&encore      &&isc*\cr
- m88k       &&gould       &&mach*\cr
- mips       &&hp          &&newsos*\cr
- ns32k      &&ibm         &&nindy*\cr
- pyramid    &&intel       &&none\cr
- rs6000     &&isi         &&osf*\cr
- rtpc       &&little      &&sco*\cr      
- sparc      &&mips        &&sunos*\cr    
- tahoe      &&motorola    &&sysv*\cr     
- tron       &&ncr         &&ultrix*\cr   
- vax        &&next        &&unos*\cr     
-            &&none        &&v88r*\cr     
-            &&sco         &&vms*\cr      
-            &&sequent     &&vxworks*\cr  
-            &&sgi         \cr            
-            &&sony        \cr            
-            &&sun         \cr            
-            &&unicom      \cr            
-            &&utek        \cr            
-            &&wrs         \cr
+ 580        && altos       && aix*    \cr
+ a29k       && amdahl      && amigados\cr
+ alliant    && aout        && aout    \cr
+ arm        && apollo      && bout    \cr
+ c1         && att         && bsd*    \cr
+ c2         && bull        && coff    \cr
+ cray2      && bcs         && ctix*   \cr
+ h8300      && bout        && dynix*  \cr
+ i386       && cbm         && esix*   \cr
+ i860       && coff        && hpux*   &Warning: Many combinations \cr
+ i960       && convergent  && irix*   &of architecture, vendor    \cr
+ m68000     && convex      && isc*    &and OS are untested.       \cr
+ m68k       && cray        && kern    \cr
+ m88k       && dec         && mach*   \cr
+ mips       && encore      && newsos* \cr
+ ns32k      && gould       && nindy*  \cr
+ pyramid    && hp          && none    \cr
+ romp       && ibm         && osf*    \cr
+ rs6000     && intel       && sco*    \cr
+ rtpc       && isi         && sunos*  \cr
+ sparc      && little      && svr4    \cr
+ tahoe      && mips        && sym*    \cr
+ tron       && motorola    && sysv*   \cr
+ vax        && ncr         && ultrix* \cr
+ xmp        && next        && unicos  \cr
+ ymp        && none        && unos*   \cr
+            && nyu         && uts     \cr
+            && sco         && v88r*   \cr
+            && sequent     && vms*    \cr
+            && sgi         && vxworks*\cr
+            && sony        &&\cr
+            && sun         &&\cr
+            && unicom      &&\cr
+            && utek        &&\cr
+            && wrs         &&\cr
 }
 @end tex
-@quotation
-@emph{Warning:} Many combinations of architecture, vendor, and OS are
-untested. 
-@end quotation
 
 The @code{configure} script accompanying _GDBN__ _GDB_VN__ does not provide
 any query facility to list all supported host and target names or