From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12804 invoked by alias); 15 Apr 2005 16:47:35 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 12499 invoked from network); 15 Apr 2005 16:47:13 -0000 Received: from unknown (HELO legolas.inter.net.il) (192.114.186.24) by sourceware.org with SMTP; 15 Apr 2005 16:47:13 -0000 Received: from zaretski (IGLD-84-228-237-143.inter.net.il [84.228.237.143]) by legolas.inter.net.il (MOS 3.5.6-GR) with ESMTP id EDR12792 (AUTH halo1); Fri, 15 Apr 2005 19:47:03 +0300 (IDT) Date: Fri, 15 Apr 2005 16:47:00 -0000 From: "Eli Zaretskii" To: gdb-patches@sources.redhat.com Message-ID: <01c541da$Blat.v2.4$3ff628a0@zahav.net.il> Content-Transfer-Encoding: 7BIT Content-Type: text/plain; charset=ISO-8859-1 Subject: [COMMIT] Document target- and native-specific commands Reply-to: Eli Zaretskii X-SW-Source: 2005-04/txt/msg00157.txt.bz2 This documents as yet undocumented commands in *-nat.c and *-tdep.c files. Committed. 2005-04-15 Eli Zaretskii * gdb.texinfo (Hurd Native): New subsection, documents Hurd-specific commands. (Maintenance Commands): Add cross-reference to "Debugging Output". (Debugging Output): Document "set/show debug lin-lwp". (MIPS): Improve documentation of heuristic-fence-post. Document "set/show mips abi", "set/show mips saved-gpreg-size", "set/show mips stack-arg-size", "set/show mips mask-address", "set/show mips remote-mips64-transfers-32bit-regs", "set/show debug mips". (ARM): Document ARM-specific commands. (AVR): New section. Document "info io_registers". (CRIS): New section. Document "set/show cris-version" and "set/show cris-dwarf2-cfi". (HPPA): New section. Document "set/show debug hppa" and "maint print unwind". (Netrino): New subsection. Document "set/show debug nto-debug". (Super-H): New section. Document the "regs" command. Index: gdb.texinfo =================================================================== RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v retrieving revision 1.237 diff -u -r1.237 gdb.texinfo --- gdb.texinfo 9 Apr 2005 15:37:19 -0000 1.237 +++ gdb.texinfo 15 Apr 2005 16:41:23 -0000 @@ -12319,6 +12319,8 @@ * SVR4 Process Information:: SVR4 process information * DJGPP Native:: Features specific to the DJGPP port * Cygwin Native:: Features specific to the Cygwin port +* Hurd Native:: Features specific to @sc{gnu} Hurd +* Neutrino:: Features specific to QNX Neutrino @end menu @node HP-UX @@ -12835,6 +12837,199 @@ break point within a shared DLL like @file{kernel32.dll} is completely safe. +@node Hurd Native +@subsection Commands specific to @sc{gnu} Hurd systems +@cindex @sc{gnu} Hurd debugging + +This subsection describes @value{GDBN} commands specific to the +@sc{gnu} Hurd native debugging. + +@table @code +@item set signals +@itemx set sigs +@kindex set signals@r{, Hurd command} +@kindex set sigs@r{, Hurd command} +This command toggles the state of inferior signal interception by +@value{GDBN}. Mach exceptions, such as breakpoint traps, are not +affected by this command. @code{sigs} is a shorthand alias for +@code{signals}. + +@item show signals +@itemx show sigs +@kindex show signals@r{, Hurd command} +@kindex show sigs@r{, Hurd command} +Show the current state of intercepting inferior's signals. + +@item set signal-thread +@itemx set sigthread +@kindex set signal-thread +@kindex set sigthread +This command tells @value{GDBN} which thread is the @code{libc} signal +thread. That thread is run when a signal is delivered to a running +process. @code{set sigthread} is the shorthand alias of @code{set +signal-thread}. + +@item show signal-thread +@itemx show sigthread +@kindex show signal-thread +@kindex show sigthread +These two commands show which thread will run when the inferior is +delivered a signal. + +@item set stopped +@kindex set stopped@r{, Hurd command} +This commands tells @value{GDBN} that the inferior process is stopped, +as with the @code{SIGSTOP} signal. The stopped process can be +continued by delivering a signal to it. + +@item show stopped +@kindex show stopped@r{, Hurd command} +This command shows whether @value{GDBN} thinks the debuggee is +stopped. + +@item set exceptions +@kindex set exceptions@r{, Hurd command} +Use this command to turn off trapping of exceptions in the inferior. +When exception trapping is off, neither breakpoints nor +single-stepping will work. To restore the default, set exception +trapping on. + +@item show exceptions +@kindex show exceptions@r{, Hurd command} +Show the current state of trapping exceptions in the inferior. + +@item set task pause +@kindex set task@r{, Hurd commands} +@cindex task attributes (@sc{gnu} Hurd) +@cindex pause current task (@sc{gnu} Hurd) +This command toggles task suspension when @value{GDBN} has control. +Setting it to on takes effect immediately, and the task is suspended +whenever @value{GDBN} gets control. Setting it to off will take +effect the next time the inferior is continued. If this option is set +to off, you can use @code{set thread default pause on} or @code{set +thread pause on} (see below) to pause individual threads. + +@item show task pause +@kindex show task@r{, Hurd commands} +Show the current state of task suspension. + +@item set task detach-suspend-count +@cindex task suspend count +@cindex detach from task, @sc{gnu} Hurd +This command sets the suspend count the task will be left with when +@value{GDBN} detaches from it. + +@item show task detach-suspend-count +Show the suspend count the task will be left with when detaching. + +@item set task exception-port +@itemx set task excp +@cindex task exception port, @sc{gnu} Hurd +This command sets the task exception port to which @value{GDBN} will +forward exceptions. The argument should be the value of the @dfn{send +rights} of the task. @code{set task excp} is a shorthand alias. + +@item set noninvasive +@cindex noninvasive task options +This command switches @value{GDBN} to a mode that is the least +invasive as far as interfering with the inferior is concerned. This +is the same as using @code{set task pause}, @code{set exceptions}, and +@code{set signals} to values opposite to the defaults. + +@item info send-rights +@itemx info receive-rights +@itemx info port-rights +@itemx info port-sets +@itemx info dead-names +@itemx info ports +@itemx info psets +@cindex send rights, @sc{gnu} Hurd +@cindex receive rights, @sc{gnu} Hurd +@cindex port rights, @sc{gnu} Hurd +@cindex port sets, @sc{gnu} Hurd +@cindex dead names, @sc{gnu} Hurd +These commands display information about, respectively, send rights, +receive rights, port rights, port sets, and dead names of a task. +There are also shorthand aliases: @code{info ports} for @code{info +port-rights} and @code{info psets} for @code{info port-sets}. + +@item set thread pause +@kindex set thread@r{, Hurd command} +@cindex thread properties, @sc{gnu} Hurd +@cindex pause current thread (@sc{gnu} Hurd) +This command toggles current thread suspension when @value{GDBN} has +control. Setting it to on takes effect immediately, and the current +thread is suspended whenever @value{GDBN} gets control. Setting it to +off will take effect the next time the inferior is continued. +Normally, this command has no effect, since when @value{GDBN} has +control, the whole task is suspended. However, if you used @code{set +task pause off} (see above), this command comes in handy to suspend +only the current thread. + +@item show thread pause +@kindex show thread@r{, Hurd command} +This command shows the state of current thread suspension. + +@item set thread run +This comamnd sets whether the current thread is allowed to run. + +@item show thread run +Show whether the current thread is allowed to run. + +@item set thread detach-suspend-count +@cindex thread suspend count, @sc{gnu} Hurd +@cindex detach from thread, @sc{gnu} Hurd +This command sets the suspend count @value{GDBN} will leave on a +thread when detaching. This number is relative to the suspend count +found by @value{GDBN} when it notices the thread; use @code{set thread +takeover-suspend-count} to force it to an absolute value. + +@item show thread detach-suspend-count +Show the suspend count @value{GDBN} will leave on the thread when +detaching. + +@item set thread exception-port +@itemx set thread excp +Set the thread exception port to which to forward exceptions. This +overrides the port set by @code{set task exception-port} (see above). +@code{set thread excp} is the shorthand alias. + +@item set thread takeover-suspend-count +Normally, @value{GDBN}'s thread suspend counts are relative to the +value @value{GDBN} finds when it notices each thread. This command +changes the suspend counts to be absolute instead. + +@item set thread default +@itemx show thread default +@cindex thread default settings, @sc{gnu} Hurd +Each of the above @code{set thread} commands has a @code{set thread +default} counterpart (e.g., @code{set thread default pause}, @code{set +thread default exception-port}, etc.). The @code{thread default} +variety of commands sets the default thread properties for all +threads; you can then change the properties of individual threads with +the non-default commands. +@end table + + +@node Neutrino +@subsection QNX Neutrino +@cindex QNX Neutrino + +@value{GDBN} provides the following commands specific to the QNX +Neutrino target: + +@table @code +@item set debug nto-debug +@kindex set debug nto-debug +When set to on, enables debugging messages specific to the QNX +Neutrino support. + +@item show debug nto-debug +@kindex show debug nto-debug +Show the current state of QNX Neutrino messages. +@end table + + @node Embedded OS @section Embedded Operating Systems @@ -13033,6 +13228,9 @@ * Sparclite:: Fujitsu Sparclite * ST2000:: Tandem ST2000 * Z8000:: Zilog Z8000 +* AVR:: Atmel AVR +* CRIS:: CRIS +* Super-H:: Renesas Super-H @end menu @node ARM @@ -13052,6 +13250,61 @@ @end table +@value{GDBN} provides the following ARM-specific commands: + +@table @code +@item set arm disassembler +@kindex set arm +This commands selects from a list of disassembly styles. The +@code{"std"} style is the standard style. + +@item show arm disassembler +@kindex show arm +Show the current disassembly style. + +@item set arm apcs32 +@cindex ARM 32-bit mode +This command toggles ARM operation mode between 32-bit and 26-bit. + +@item show arm apcs32 +Display the current usage of the ARM 32-bit mode. + +@item set arm fpu @var{fputype} +This command sets the ARM floating-point unit (FPU) type. The +argument @var{fputype} can be one of these: + +@table @code +@item auto +Determine the FPU type by querying the OS ABI. +@item softfpa +Software FPU, with mixed-endian doubles on little-endian ARM +processors. +@item fpa +GCC-compiled FPA co-processor. +@item softvfp +Software FPU with pure-endian doubles. +@item vfp +VFP co-processor. +@end table + +@item show arm fpu +Show the current type of the FPU. + +@item set arm abi +This command forces @value{GDBN} to use the specified ABI. + +@item show arm abi +Show the currently used ABI. + +@item set debug arm +Toggle whether to display ARM-specific debugging messages from the ARM +target support subsystem. + +@item show debug arm +Show whether ARM-specific debugging messages are enabled. +@end table + + @node H8/300 @subsection Renesas H8/300 @@ -13397,6 +13650,7 @@ @item set mipsfpu double @itemx set mipsfpu single @itemx set mipsfpu none +@itemx set mipsfpu auto @itemx show mipsfpu @kindex set mipsfpu @kindex show mipsfpu @@ -13882,6 +14136,62 @@ conditional breakpoint that suspends only after at least 5000 simulated clock ticks. +@node AVR +@subsection Atmel AVR +@cindex AVR + +When configured for debugging the Atmel AVR, @value{GDBN} supports the +following AVR-specific commands: + +@table @code +@item info io_registers +@kindex info io_registers@r{, AVR} +@cindex I/O registers (Atmel AVR) +This command displays information about the AVR I/O registers. For +each register, @value{GDBN} prints its number and value. +@end table + +@node CRIS +@subsection CRIS +@cindex CRIS + +When configured for debugging CRIS, @value{GDBN} provides the +following CRIS-specific commands: + +@table @code +@item set cris-version @var{ver} +@cindex CRIS version +Set the current CRIS version to @var{ver}. The CRIS version affects +register names and sizes. This command is useful in case +autodetection of the CRIS version fails. + +@item show cris-version +Show the current CRIS version. + +@item set cris-dwarf2-cfi +@cindex DWARF-2 CFI and CRIS +Set the usage of DWARF-2 CFI for CRIS debugging. The default is off +if using @code{gcc-cris} whose version is below @code{R59}, otherwise +on. + +@item show cris-dwarf2-cfi +Show the current state of using DWARF-2 CFI. +@end table + +@node Super-H +@subsection Renesas Super-H +@cindex Super-H + +For the Renesas Super-H processor, @value{GDBN} provides these +commands: + +@table @code +@item regs +@kindex regs@r{, Super-H} +Show the values of all Super-H registers. +@end table + + @node Architectures @section Architectures @@ -13893,6 +14203,7 @@ * A29K:: * Alpha:: * MIPS:: +* HPPA:: HP PA architecture @end menu @node i386 @@ -13972,7 +14283,8 @@ search for the beginning of a function. A value of @var{0} (the default) means there is no limit. However, except for @var{0}, the larger the limit the more bytes @code{heuristic-fence-post} must search -and therefore the longer it takes to run. +and therefore the longer it takes to run. You should only need to use +this command when debugging a stripped executable. @item show heuristic-fence-post Display the current limit. @@ -13982,6 +14294,122 @@ These commands are available @emph{only} when @value{GDBN} is configured for debugging programs on Alpha or MIPS processors. +Several MIPS-specific commands are available when debugging MIPS +programs: + +@table @code +@item set mips saved-gpreg-size @var{size} +@kindex set mips saved-gpreg-size +@cindex MIPS GP register size on stack +Set the size of MIPS general-purpose registers saved on the stack. +The argument @var{size} can be one of the following: + +@table @samp +@item 32 +32-bit GP registers +@item 64 +64-bit GP registers +@item auto +Use the target's default setting or autodetect the saved size from the +information contained in the executable. This is the default +@end table + +@item show mips saved-gpreg-size +@kindex show mips saved-gpreg-size +Show the current size of MIPS GP registers on the stack. + +@item set mips stack-arg-size @var{size} +@kindex set mips stack-arg-size +@cindex MIPS stack space for arguments +Set the amount of stack space reserved for arguments to functions. +The argument can be one of @code{"32"}, @code{"64"} or @code{"auto"} +(the default). + +@item set mips abi @var{arg} +@kindex set mips abi +@cindex set ABI for MIPS +Tell @value{GDBN} which MIPS ABI is used by the inferior. Possible +values of @var{arg} are: + +@table @samp +@item auto +The default ABI associated with the current binary (this is the +default). +@item o32 +@item o64 +@item n32 +@item n64 +@item eabi32 +@item eabi64 +@item auto +@end table + +@item show mips abi +@kindex show mips abi +Show the MIPS ABI used by @value{GDBN} to debug the inferior. + +@item set mipsfpu +@itemx show mipsfpu +@xref{MIPS Embedded, set mipsfpu}. + +@item set mips mask-address @var{arg} +@kindex set mips mask-address +@cindex MIPS addresses, masking +This command determines whether the most-significant 32 bits of 64-bit +MIPS addresses are masked off. The argument @var{arg} can be +@samp{on}, @samp{off}, or @samp{auto}. The latter is the default +setting, which lets @value{GDBN} determine the correct value. + +@item show mips mask-address +@kindex show mips mask-address +Show whether the upper 32 bits of MIPS addresses are masked off or +not. + +@item set remote-mips64-transfers-32bit-regs +@kindex set remote-mips64-transfers-32bit-regs +This command controls compatibility with 64-bit MIPS targets that +transfer data in 32-bit quantities. If you have an old MIPS 64 target +that transfers 32 bits for some registers, like @sc{sr} and @sc{fsr}, +and 64 bits for other registers, set this option to @samp{on}. + +@item show remote-mips64-transfers-32bit-regs +@kindex show remote-mips64-transfers-32bit-regs +Show the current setting of compatibility with older MIPS 64 targets. + +@item set debug mips +@kindex set debug mips +This command turns on and off debugging messages for the MIPS-specific +target code in @value{GDBN}. + +@item show debug mips +@kindex show debug mips +Show the current setting of MIPS debugging messages. +@end table + + +@node HPPA +@subsection HPPA +@cindex HPPA support + +When @value{GDBN} is debugging te HP PA architecture, it provides the +following special commands: + +@table @code +@item set debug hppa +@kindex set debug hppa +THis command determines whether HPPA architecture specific debugging +messages are to be displayed. + +@item show debug hppa +Show whether HPPA debugging messages are displayed. + +@item maint print unwind @var{address} +@kindex maint print unwind@r{, HPPA} +This command displays the contents of the unwind table entry at the +given @var{address}. + +@end table + @node Controlling GDB @chapter Controlling @value{GDBN} @@ -14438,6 +14866,11 @@ @section Optional messages about internal happenings @cindex optional debugging messages +@value{GDBN} has commands that enable optional debugging messages from +various @value{GDBN} subsystems; normally these commands are of +interest to @value{GDBN} maintainers, or when reporting a bug. This +section documents those commands. + @table @code @kindex set exec-done-display @item set exec-done-display @@ -14484,6 +14917,12 @@ for implementing operations such as single-stepping the inferior. @item show debug infrun Displays the current state of @value{GDBN} inferior debugging. +@item set debug lin-lwp +@cindex @sc{gnu}/Linux LWP debug messages +@cindex Linux lightweight processes +Turns on or off debugging messages from the LWP debug support. +@item show debug lin-lwp +Show the current state of Linux LWP debugging messages. @item set debug observer @cindex observer debugging info Turns on or off display of @value{GDBN} observer debugging. This @@ -20469,7 +20908,8 @@ In addition to commands intended for @value{GDBN} users, @value{GDBN} includes a number of commands intended for @value{GDBN} developers, that are not documented elsewhere in this manual. These commands are -provided here for reference. +provided here for reference. (For commands that turn on debugging +messages, see @ref{Debugging Output}.) @table @code @kindex maint agent