diff options
Diffstat (limited to 'gdb/doc/gdb.texinfo')
-rw-r--r-- | gdb/doc/gdb.texinfo | 324 |
1 files changed, 6 insertions, 318 deletions
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo index d51066a..4be576b 100644 --- a/gdb/doc/gdb.texinfo +++ b/gdb/doc/gdb.texinfo @@ -5890,7 +5890,7 @@ address printed if several units were printed on the last line of output. @cindex remote memory comparison @cindex verify remote memory image When you are debugging a program running on a remote target machine -(@pxref{Remote}), you may wish to verify the program's image in the +(@pxref{Remote Debugging}), you may wish to verify the program's image in the remote machine's memory against the executable file you downloaded to the target. The @code{compare-sections} command is provided for such situations. @@ -7078,7 +7078,7 @@ character set}; the one the inferior program uses we call the For example, if you are running @value{GDBN} on a @sc{gnu}/Linux system, which uses the ISO Latin 1 character set, but you are using @value{GDBN}'s -remote protocol (@pxref{Remote, ,Remote Debugging}) to debug a program +remote protocol (@pxref{Remote Debugging}) to debug a program running on an IBM mainframe, which uses the @sc{ebcdic} character set, then the host character set is Latin-1, and the target character set is @sc{ebcdic}. If you give @value{GDBN} the command @code{set @@ -7310,7 +7310,7 @@ character. @cindex caching data of remote targets @value{GDBN} can cache data exchanged between the debugger and a -remote target (@pxref{Remote}). Such caching generally improves +remote target (@pxref{Remote Debugging}). Such caching generally improves performance, because it reduces the overhead of the remote protocol by bundling memory reads and writes into large chunks. Unfortunately, @value{GDBN} does not currently know anything about volatile @@ -12191,8 +12191,6 @@ and @code{show architecture}. * Active Targets:: Active targets * Target Commands:: Commands for managing targets * Byte Order:: Choosing target byte order -* Remote:: Remote debugging - @end menu @node Active Targets @@ -12437,8 +12435,9 @@ Note that these commands merely adjust interpretation of symbolic data on the host, and that they have absolutely no effect on the target system. -@node Remote -@section Remote Debugging + +@node Remote Debugging +@chapter Debugging Remote Programs @cindex remote debugging If you are trying to debug a program running on a machine that cannot run @@ -12457,20 +12456,6 @@ communicate with @value{GDBN}. Other remote targets may be available in your configuration of @value{GDBN}; use @code{help target} to list them. -Once you've connected to the remote target, @value{GDBN} allows you to -send arbitrary commands to the remote monitor: - -@table @code -@item remote @var{command} -@kindex remote@r{, a command} -@cindex send command to remote monitor -Send an arbitrary @var{command} string to the remote monitor. -@end table - - -@node Remote Debugging -@chapter Debugging Remote Programs - @menu * Connecting:: Connecting to a remote target * Server:: Using the gdbserver program @@ -12807,19 +12792,6 @@ expect to see @samp{Ctrl-C} as the interrupt signal. Show whether @value{GDBN} sends @code{BREAK} or @samp{Ctrl-C} to interrupt the remote program. -@item set remotedevice @var{device} -@cindex serial port name -Set the name of the serial port through which to communicate to the -remote target to @var{device}. This is the device used by -@value{GDBN} to open the serial communications line to the remote -target. There's no default, so you must set a valid port name for the -remote serial communications to work. (Some varieties of the -@code{target} command accept the port name as part of their -arguments.) - -@item show remotedevice -Show the current name of the serial port. - @item set remotelogbase @var{base} Set the base (a.k.a.@: radix) of logging serial protocol communications to @var{base}. Supported values of @var{base} are: @@ -14259,15 +14231,12 @@ acceptable commands. @menu * ARM:: ARM RDI -* H8/300:: Renesas H8/300 -* H8/500:: Renesas H8/500 * M32R/D:: Renesas M32R/D * M68K:: Motorola M68K * MIPS Embedded:: MIPS Embedded * OpenRISC 1000:: OpenRisc 1000 * PA:: HP PA Embedded * PowerPC:: PowerPC -* SH:: Renesas SH * Sparclet:: Tsqware Sparclet * Sparclite:: Fujitsu Sparclite * Z8000:: Zilog Z8000 @@ -14392,264 +14361,6 @@ Show the setting of RDI heartbeat packets. @end table -@node H8/300 -@subsection Renesas H8/300 - -@table @code - -@kindex target hms@r{, with H8/300} -@item target hms @var{dev} -A Renesas SH, H8/300, or H8/500 board, attached via serial line to your host. -Use special commands @code{device} and @code{speed} to control the serial -line and the communications speed used. - -@kindex target e7000@r{, with H8/300} -@item target e7000 @var{dev} -E7000 emulator for Renesas H8 and SH. - -@kindex target sh3@r{, with H8/300} -@kindex target sh3e@r{, with H8/300} -@item target sh3 @var{dev} -@itemx target sh3e @var{dev} -Renesas SH-3 and SH-3E target systems. - -@end table - -@cindex download to H8/300 or H8/500 -@cindex H8/300 or H8/500 download -@cindex download to Renesas SH -@cindex Renesas SH download -When you select remote debugging to a Renesas SH, H8/300, or H8/500 -board, the @code{load} command downloads your program to the Renesas -board and also opens it as the current executable target for -@value{GDBN} on your host (like the @code{file} command). - -@value{GDBN} needs to know these things to talk to your -Renesas SH, H8/300, or H8/500: - -@enumerate -@item -that you want to use @samp{target hms}, the remote debugging interface -for Renesas microprocessors, or @samp{target e7000}, the in-circuit -emulator for the Renesas SH and the Renesas 300H. (@samp{target hms} is -the default when @value{GDBN} is configured specifically for the Renesas SH, -H8/300, or H8/500.) - -@item -what serial device connects your host to your Renesas board (the first -serial device available on your host is the default). - -@item -what speed to use over the serial device. -@end enumerate - -@menu -* Renesas Boards:: Connecting to Renesas boards. -* Renesas ICE:: Using the E7000 In-Circuit Emulator. -* Renesas Special:: Special @value{GDBN} commands for Renesas micros. -@end menu - -@node Renesas Boards -@subsubsection Connecting to Renesas Boards - -@c only for Unix hosts -@kindex device -@cindex serial device, Renesas micros -Use the special @code{@value{GDBN}} command @samp{device @var{port}} if you -need to explicitly set the serial device. The default @var{port} is the -first available port on your host. This is only necessary on Unix -hosts, where it is typically something like @file{/dev/ttya}. - -@kindex speed -@cindex serial line speed, Renesas micros -@code{@value{GDBN}} has another special command to set the communications -speed: @samp{speed @var{bps}}. This command also is only used from Unix -hosts; on DOS hosts, set the line speed as usual from outside @value{GDBN} with -the DOS @code{mode} command (for instance, -@w{@kbd{mode com2:9600,n,8,1,p}} for a 9600@dmn{bps} connection). - -The @samp{device} and @samp{speed} commands are available only when you -use a Unix host to debug your Renesas microprocessor programs. If you -use a DOS host, -@value{GDBN} depends on an auxiliary terminate-and-stay-resident program -called @code{asynctsr} to communicate with the development board -through a PC serial port. You must also use the DOS @code{mode} command -to set up the serial port on the DOS side. - -The following sample session illustrates the steps needed to start a -program under @value{GDBN} control on an H8/300. The example uses a -sample H8/300 program called @file{t.x}. The procedure is the same for -the Renesas SH and the H8/500. - -First hook up your development board. In this example, we use a -board attached to serial port @code{COM2}; if you use a different serial -port, substitute its name in the argument of the @code{mode} command. -When you call @code{asynctsr}, the auxiliary comms program used by the -debugger, you give it just the numeric part of the serial port's name; -for example, @samp{asyncstr 2} below runs @code{asyncstr} on -@code{COM2}. - -@smallexample -C:\H8300\TEST> asynctsr 2 -C:\H8300\TEST> mode com2:9600,n,8,1,p - -Resident portion of MODE loaded - -COM2: 9600, n, 8, 1, p - -@end smallexample - -@quotation -@emph{Warning:} We have noticed a bug in PC-NFS that conflicts with -@code{asynctsr}. If you also run PC-NFS on your DOS host, you may need to -disable it, or even boot without it, to use @code{asynctsr} to control -your development board. -@end quotation - -@kindex target hms@r{, and serial protocol} -Now that serial communications are set up, and the development board is -connected, you can start up @value{GDBN}. Call @code{@value{GDBN}} with -the name of your program as the argument. @code{@value{GDBN}} prompts -you, as usual, with the prompt @samp{(@value{GDBP})}. Use two special -commands to begin your debugging session: @samp{target hms} to specify -cross-debugging to the Renesas board, and the @code{load} command to -download your program to the board. @code{load} displays the names of -the program's sections, and a @samp{*} for each 2K of data downloaded. -(If you want to refresh @value{GDBN} data on symbols or on the -executable file without downloading, use the @value{GDBN} commands -@code{file} or @code{symbol-file}. These commands, and @code{load} -itself, are described in @ref{Files,,Commands to Specify Files}.) - -@smallexample -(eg-C:\H8300\TEST) @value{GDBP} t.x -@value{GDBN} is free software and you are welcome to distribute copies - of it under certain conditions; type "show copying" to see - the conditions. -There is absolutely no warranty for @value{GDBN}; type "show warranty" -for details. -@value{GDBN} @value{GDBVN}, Copyright 1992 Free Software Foundation, Inc... -(@value{GDBP}) target hms -Connected to remote H8/300 HMS system. -(@value{GDBP}) load t.x -.text : 0x8000 .. 0xabde *********** -.data : 0xabde .. 0xad30 * -.stack : 0xf000 .. 0xf014 * -@end smallexample - -At this point, you're ready to run or debug your program. From here on, -you can use all the usual @value{GDBN} commands. The @code{break} command -sets breakpoints; the @code{run} command starts your program; -@code{print} or @code{x} display data; the @code{continue} command -resumes execution after stopping at a breakpoint. You can use the -@code{help} command at any time to find out more about @value{GDBN} commands. - -Remember, however, that @emph{operating system} facilities aren't -available on your development board; for example, if your program hangs, -you can't send an interrupt---but you can press the @sc{reset} switch! - -Use the @sc{reset} button on the development board -@itemize @bullet -@item -to interrupt your program (don't use @kbd{Ctrl-c} on the DOS host---it has -no way to pass an interrupt signal to the development board); and - -@item -to return to the @value{GDBN} command prompt after your program finishes -normally. The communications protocol provides no other way for @value{GDBN} -to detect program completion. -@end itemize - -In either case, @value{GDBN} sees the effect of a @sc{reset} on the -development board as a ``normal exit'' of your program. - -@node Renesas ICE -@subsubsection Using the E7000 In-circuit Emulator - -@kindex target e7000@r{, with Renesas ICE} -You can use the E7000 in-circuit emulator to develop code for either the -Renesas SH or the H8/300H. Use one of these forms of the @samp{target -e7000} command to connect @value{GDBN} to your E7000: - -@table @code -@item target e7000 @var{port} @var{speed} -Use this form if your E7000 is connected to a serial port. The -@var{port} argument identifies what serial port to use (for example, -@samp{com2}). The third argument is the line speed in bits per second -(for example, @samp{9600}). - -@item target e7000 @var{hostname} -If your E7000 is installed as a host on a TCP/IP network, you can just -specify its hostname; @value{GDBN} uses @code{telnet} to connect. -@end table - -The following special commands are available when debugging with the -Renesas E7000 ICE: - -@table @code -@item e7000 @var{command} -@kindex e7000 -@cindex send command to E7000 monitor -This sends the specified @var{command} to the E7000 monitor. - -@item ftplogin @var{machine} @var{username} @var{password} @var{dir} -@kindex ftplogin@r{, E7000} -This command records information for subsequent interface with the -E7000 monitor via the FTP protocol: @value{GDBN} will log into the -named @var{machine} using specified @var{username} and @var{password}, -and then chdir to the named directory @var{dir}. - -@item ftpload @var{file} -@kindex ftpload@r{, E7000} -This command uses credentials recorded by @code{ftplogin} to fetch and -load the named @var{file} from the E7000 monitor. - -@item drain -@kindex drain@r{, E7000} -This command drains any pending text buffers stored on the E7000. - -@item set usehardbreakpoints -@itemx show usehardbreakpoints -@kindex set usehardbreakpoints@r{, E7000} -@kindex show usehardbreakpoints@r{, E7000} -@cindex hardware breakpoints, and E7000 -These commands set and show the use of hardware breakpoints for all -breakpoints. @xref{Set Breaks, hardware-assisted breakpoint}, for -more information about using hardware breakpoints selectively. -@end table - -@node Renesas Special -@subsubsection Special @value{GDBN} Commands for Renesas Micros - -Some @value{GDBN} commands are available only for the H8/300: - -@table @code - -@kindex set machine -@kindex show machine -@item set machine h8300 -@itemx set machine h8300h -Condition @value{GDBN} for one of the two variants of the H8/300 -architecture with @samp{set machine}. You can use @samp{show machine} -to check which variant is currently in effect. - -@end table - -@node H8/500 -@subsection H8/500 - -@table @code - -@kindex set memory @var{mod} -@cindex memory models, H8/500 -@item set memory @var{mod} -@itemx show memory -Specify which H8/500 memory model (@var{mod}) you are using with -@samp{set memory}; check which memory model is in effect with @samp{show -memory}. The accepted values for @var{mod} are @code{small}, -@code{big}, @code{medium}, and @code{compact}. - -@end table - @node M32R/D @subsection Renesas M32R/D and M32R/SDI @@ -15088,29 +14799,6 @@ W89K monitor, running on a Winbond HPPA board. @end table -@node SH -@subsection Renesas SH - -@table @code - -@kindex target hms@r{, with Renesas SH} -@item target hms @var{dev} -A Renesas SH board attached via serial line to your host. Use special -commands @code{device} and @code{speed} to control the serial line and -the communications speed used. - -@kindex target e7000@r{, with Renesas SH} -@item target e7000 @var{dev} -E7000 emulator for Renesas SH. - -@kindex target sh3@r{, with SH} -@kindex target sh3e@r{, with SH} -@item target sh3 @var{dev} -@item target sh3e @var{dev} -Renesas SH-3 and SH-3E target systems. - -@end table - @node Sparclet @subsection Tsqware Sparclet |