refcard.tex revision 1.9
1%%%%%%%%%%%%%%%% gdb-refcard.tex %%%%%%%%%%%%%%%% 2 3%This file is TeX source for a reference card describing GDB, the GNU debugger. 4%Copyright (C) 1991--2020 Free Software Foundation, Inc. 5%Permission is granted to make and distribute verbatim copies of 6%this reference provided the copyright notices and permission notices 7%are preserved on all copies. 8% 9%TeX markup is a programming language; accordingly this file is source 10%for a program to generate a reference. 11% 12%This program is free software; you can redistribute it and/or modify 13%it under the terms of the GNU General Public License as published by 14%the Free Software Foundation; either version 3, or (at your option) 15%any later version. 16% 17%This program is distributed in the hope that it will be useful, but 18%WITHOUT ANY WARRANTY; without even the implied warranty of 19%MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 20%General Public License for more details. 21% 22%You should have received a copy of the GNU General Public License 23%along with this program. If not, see <http://www.gnu.org/licenses/>. 24% 25%You can contact the maintainer at: doc@cygnus.com 26% 27% Documentation Department 28% Cygnus Solutions 29% 1325 Chesapeake Terrace 30% Sunnyvale, CA 94089 USA 31% 32% +1 800 CYGNUS-1 33% 34% 35% 36% 22-AUG-1993 Andreas Vogel 37% 38% Modifications made in order to handle different papersizes correctly. 39% You only have to set the total width and height of the paper, the 40% horizontal and vertical margin space measured from *paper edge* 41% and the interline and interspec spacing. 42% In order to support a new papersize, you have to fiddle with the 43% latter four dimensions. Just try out a few values. 44% All other values will be computed at process time so it should be 45% quite easy to support different paper sizes - only four values to 46% guess :-) 47% 48% To find the configuration places, just search for the string 49% "CONFIGURATION". 50% 51% Andreas Vogel (av@ssw.de) 52% 53% 54% 55% Uncomment the following `magnification' command if you want to print 56% out in a larger font. Caution! You may need larger paper. You had 57% best avoid using 3-column output if you try this. See the ``Three 58% column format'' section below if you want to print in three column 59% format. 60% 61%\magnification=\magstep 1 62% 63% NOTE ON INTENTIONAL OMISSIONS: This reference card includes most GDB 64% commands, but due to space constraints there are some things I chose 65% to omit. In general, not all synonyms for commands are covered, nor 66% all variations of a command. 67% The GDB-under-Emacs section omits gdb-mode functions without default 68% keybindings. GDB startup options are not described. 69% set print sevenbit-strings omitted. 70% printsyms, printpsyms, omitted since they're for GDB maintenance primarily 71% share omitted due to obsolescence 72% set check range/type omitted at least til code is in GDB. 73% 74%-------------------- Three column format ----------------------- 75 76%%%% --- To disable three column format, comment out this entire section 77 78% Three-column format for landscape printing 79 80%-------- Papersize defs: 81 82\newdimen\totalwidth \newdimen\totalheight 83\newdimen\hmargin \newdimen\vmargin 84\newdimen\secskip \newdimen\lskip 85\newdimen\barwidth \newdimen\barheight 86\newdimen\intersecwidth 87 88%% 89%% START CONFIGURATION - PAPERSIZE DEFINITIONS 90%------- Papersize params: 91%% US letter paper (8.5x11in) 92%% 93\totalwidth=11in % total width of paper 94\totalheight=8.5in % total height of paper 95\hmargin=.25in % horizontal margin width 96\vmargin=.25in % vertical margin width 97\secskip=1pc % space between refcard secs 98\lskip=2pt % extra skip between \sec entries 99\ifx\pdfoutput\undefined\else % check if we are using pdfTeX 100 \pdfpagewidth=\totalwidth % width of paper in pdf output 101 \pdfpageheight=\totalheight % height of paper in pdf output 102\fi 103%------- end papersize params 104%% 105%% change according to personal taste, not papersize dependent 106%% 107\barwidth=.1pt % width of the cropmark bar 108\barheight=2pt % height of the cropmark bar 109\intersecwidth=0.5em % width between \itmwid and \dfnwid 110%% 111%% END CONFIGURATION - PAPERSIZE DEFINITIONS 112%% 113 114%% 115%% values to be computed - nothing to configure 116%% 117\newdimen\fullhsize % width of area without margins 118\newdimen\itmwid % width of item column 119\newdimen\dfnwid % width of definition column 120\newdimen\temp % only for temporary use 121 122%% 123%% adjust the offsets so the margins are measured *from paper edge* 124%% 125\hoffset=-1in \advance \hoffset by \hmargin 126\voffset=-1in \advance \voffset by \vmargin 127 128%% 129%% fullhsize = totalwidth - (2 * hmargin) 130%% 131\fullhsize=\totalwidth 132\temp=\hmargin \multiply \temp by 2 \advance \fullhsize by -\temp 133 134%% 135%% hsize = (fullhsize - (4 * hmargin) - (2 * barwidth)) / 3 136%% 137\hsize=\fullhsize 138\temp=\hmargin \multiply \temp by 4 \advance \hsize by -\temp 139\temp=\barwidth \multiply \temp by 2 \advance \hsize by -\temp 140\divide \hsize by 3 141 142%% 143%% vsize = totalheight - (2 * vmargin) 144%% 145\vsize=\totalheight 146\temp=\vmargin \multiply \temp by 2 \advance \vsize by -\temp 147 148%% 149%% itmwid = (hsize - intersecwidth) * 1/3 150%% dfnwid = (hsize - intersecwidth) * 2/3 151%% 152\temp=\hsize \advance \temp by -\intersecwidth \divide \temp by 3 153\itmwid=\temp 154\dfnwid=\hsize \advance \dfnwid by -\itmwid 155 156%-------- end papersize defs 157 158 159\def\fulline{\hbox to \fullhsize} 160\let\lcr=L \newbox\leftcolumn\newbox\centercolumn 161\output={\if L\lcr 162 \global\setbox\leftcolumn=\columnbox \global\let\lcr=C 163 \else 164 \if C\lcr 165 \global\setbox\centercolumn=\columnbox \global\let\lcr=R 166 \else \tripleformat \global\let\lcr=L 167 \fi 168 \fi 169% \ifnum\outputpenalty>-20000 \else\dosupereject\fi 170 } 171 172%% 173%% START CONFIGURATION - ALTERNATIVE FOLDING GUIDES 174%% 175%% For NO printed folding guide, 176%% comment out other \def\vdecor's and uncomment: 177 178%\def\vdecor{\hskip\hmargin plus1fil\hskip\barwidth plus1fil\hskip\hmargin plus1fil} 179 180%% For SOLID LINE folding guide, 181%% comment out other \def\vdecor's and uncomment: 182 183%\def\vdecor{\hskip\hmargin plus1fil \vrule width \barwidth \hskip\hmargin plus1fil} 184 185%% For SMALL MARKS NEAR TOP AND BOTTOM as folding guide, 186%% comment out other \def\vdecor's and uncomment: 187 188\def\vdecor{\hskip\hmargin plus1fil 189\vbox to \vsize{\hbox to \barwidth{\vrule height\barheight width\barwidth}\vfill 190\hbox to \barwidth{\vrule height\barheight width\barwidth}}%THIS PERCENT SIGN IS ESSENTIAL 191\hskip\hmargin plus1fil} 192 193%% 194%% END CONFIGURATION - ALTERNATIVES FOR FOLDING GUIDES 195%% 196 197\def\tripleformat{\shipout\vbox{\fulline{\box\leftcolumn\vdecor 198 \box\centercolumn\vdecor 199 \columnbox} 200 } 201 \advancepageno} 202\def\columnbox{\leftline{\pagebody}} 203\def\bye{\par\vfill 204 \supereject 205 \if R\lcr \null\vfill\eject\fi 206 \end} 207 208%-------------------- end three column format ----------------------- 209 210%-------------------- Computer Modern font defs: -------------------- 211\font\bbf=cmbx10 212\font\vbbf=cmbx12 213\font\smrm=cmr6 214\font\brm=cmr10 215\font\rm=cmr7 216\font\it=cmti7 217\font\tt=cmtt8 218%-------------------- end font defs --------------------------------- 219 220% 221\hyphenpenalty=5000\tolerance=2000\raggedright\raggedbottom 222\normalbaselineskip=9pt\baselineskip=9pt 223% 224\parindent=0pt 225\parskip=0pt 226\footline={\vbox to0pt{\hss}} 227% 228\def\ctl#1{{\tt C-#1}} 229\def\opt#1{{\brm[{\rm #1}]}} 230\def\xtra#1{\noalign{\smallskip{\tt#1}}} 231% 232\long\def\sec#1;#2\endsec{\vskip \secskip 233\halign{% 234%COL 1 (of halign): 235\vtop{\hsize=\itmwid\tt 236##\par\vskip \lskip }\hfil 237%COL 2 (of halign): 238&\vtop{\hsize=\dfnwid\hangafter=1\hangindent=\intersecwidth 239\rm ##\par\vskip \lskip}\cr 240%Tail of \long\def fills in halign body with \sec args: 241\noalign{{\bbf #1}\vskip \lskip} 242#2 243} 244} 245 246{\vbbf GDB QUICK REFERENCE}\hfil{\smrm GDB Version 5}\qquad 247 248\sec Essential Commands; 249gdb {\it program} \opt{{\it core}}&debug {\it program} \opt{using 250coredump {\it core}}\cr 251b \opt{\it file\tt:}{\it function}&set breakpoint at {\it function} \opt{in \it file}\cr 252run \opt{{\it arglist}}&start your program \opt{with {\it arglist}}\cr 253bt& backtrace: display program stack\cr 254p {\it expr}&display the value of an expression\cr 255c &continue running your program\cr 256n &next line, stepping over function calls\cr 257s &next line, stepping into function calls\cr 258\endsec 259 260\sec Starting GDB; 261gdb&start GDB, with no debugging files\cr 262gdb {\it program}&begin debugging {\it program}\cr 263gdb {\it program core}&debug coredump {\it core} produced by {\it 264program}\cr 265gdb --help&describe command line options\cr 266\endsec 267 268\sec Stopping GDB; 269quit&exit GDB; also {\tt q} or {\tt EOF} (eg \ctl{d})\cr 270INTERRUPT&(eg \ctl{c}) terminate current command, or send to running process\cr 271\endsec 272 273\sec Getting Help; 274help&list classes of commands\cr 275help {\it class}&one-line descriptions for commands in {\it class}\cr 276help {\it command}&describe {\it command}\cr 277\endsec 278 279\sec Executing your Program; 280run {\it arglist}&start your program with {\it arglist}\cr 281run&start your program with current argument list\cr 282run $\ldots$ <{\it inf} >{\it outf}&start your program with input, output 283redirected\cr 284\cr 285kill&kill running program\cr 286\cr 287tty {\it dev}&use {\it dev} as stdin and stdout for next {\tt run}\cr 288set args {\it arglist}&specify {\it arglist} for next 289{\tt run}\cr 290set args&specify empty argument list\cr 291show args&display argument list\cr 292\cr 293show env&show all environment variables\cr 294show env {\it var}&show value of environment variable {\it var}\cr 295set env {\it var} {\it string}&set environment variable {\it var}\cr 296unset env {\it var}&remove {\it var} from environment\cr 297\endsec 298 299\sec Shell Commands; 300cd {\it dir}&change working directory to {\it dir}\cr 301pwd&Print working directory\cr 302make $\ldots$&call ``{\tt make}''\cr 303shell {\it cmd}&execute arbitrary shell command string\cr 304\endsec 305 306\vfill 307\line{\smrm \opt{ } surround optional arguments \hfill $\ldots$ show 308one or more arguments} 309\vskip\baselineskip 310\centerline{\smrm \copyright 1998-2020 Free Software Foundation, Inc.\qquad Permissions on back} 311\eject 312\sec Breakpoints and Watchpoints; 313break \opt{\it file\tt:}{\it line}\par 314b \opt{\it file\tt:}{\it line}&set breakpoint at {\it line} number \opt{in \it file}\par 315eg:\quad{\tt break main.c:37}\quad\cr 316break \opt{\it file\tt:}{\it func}&set breakpoint at {\it 317func} \opt{in \it file}\cr 318break +{\it offset}\par 319break -{\it offset}&set break at {\it offset} lines from current stop\cr 320break *{\it addr}&set breakpoint at address {\it addr}\cr 321break&set breakpoint at next instruction\cr 322break $\ldots$ if {\it expr}&break conditionally on nonzero {\it expr}\cr 323cond {\it n} \opt{\it expr}&new conditional expression on breakpoint 324{\it n}; make unconditional if no {\it expr}\cr 325tbreak $\ldots$&temporary break; disable when reached\cr 326rbreak \opt{\it file\tt:}{\it regex}&break on all functions matching {\it 327regex} \opt{in \it file}\cr 328watch {\it expr}&set a watchpoint for expression {\it expr}\cr 329catch {\it event}&break at {\it event}, which may be {\tt catch}, {\tt throw}, 330{\tt exec}, {\tt fork}, {\tt vfork}, {\tt load}, or {\tt unload}.\cr 331\cr 332info break&show defined breakpoints\cr 333info watch&show defined watchpoints\cr 334\cr 335clear&delete breakpoints at next instruction\cr 336clear \opt{\it file\tt:}{\it fun}&delete breakpoints at entry to {\it fun}()\cr 337clear \opt{\it file\tt:}{\it line}&delete breakpoints on source line \cr 338delete \opt{{\it n}}&delete breakpoints 339\opt{or breakpoint {\it n}}\cr 340\cr 341disable \opt{{\it n}}&disable breakpoints 342\opt{or breakpoint {\it n}} 343\cr 344enable \opt{{\it n}}&enable breakpoints 345\opt{or breakpoint {\it n}} 346\cr 347enable once \opt{{\it n}}&enable breakpoints \opt{or breakpoint {\it n}}; 348disable again when reached 349\cr 350enable del \opt{{\it n}}&enable breakpoints \opt{or breakpoint {\it n}}; 351delete when reached 352\cr 353\cr 354ignore {\it n} {\it count}&ignore breakpoint {\it n}, {\it count} 355times\cr 356\cr 357commands {\it n}\par 358\qquad \opt{\tt silent}\par 359\qquad {\it command-list}&execute GDB {\it command-list} every time breakpoint {\it n} is reached. \opt{{\tt silent} suppresses default 360display}\cr 361end&end of {\it command-list}\cr 362\endsec 363 364\sec Program Stack; 365backtrace \opt{\it n}\par 366bt \opt{\it n}&print trace of all frames in stack; or of {\it n} 367frames---innermost if {\it n}{\tt >0}, outermost if {\it n}{\tt <0}\cr 368frame \opt{\it n}&select frame number {\it n} or frame at address {\it 369n}; if no {\it n}, display current frame\cr 370up {\it n}&select frame {\it n} frames up\cr 371down {\it n}&select frame {\it n} frames down\cr 372info frame \opt{\it addr}&describe selected frame, or frame at 373{\it addr}\cr 374info args&arguments of selected frame\cr 375info locals&local variables of selected frame\cr 376info reg \opt{\it rn}$\ldots$\par 377info all-reg \opt{\it rn}®ister values \opt{for regs {\it rn\/}} in 378selected frame; {\tt all-reg} includes floating point\cr 379\endsec 380 381\vfill\eject 382\sec Execution Control; 383continue \opt{\it count}\par 384c \opt{\it count}&continue running; if {\it count} specified, ignore 385this breakpoint next {\it count} times\cr 386\cr 387step \opt{\it count}\par 388s \opt{\it count}&execute until another line reached; repeat {\it count} times if 389specified\cr 390stepi \opt{\it count}\par 391si \opt{\it count}&step by machine instructions rather than source 392lines\cr 393\cr 394next \opt{\it count}\par 395n \opt{\it count}&execute next line, including any function calls\cr 396nexti \opt{\it count}\par 397ni \opt{\it count}&next machine instruction rather than source 398line\cr 399\cr 400until \opt{\it location}&run until next instruction (or {\it 401location})\cr 402finish&run until selected stack frame returns\cr 403return \opt{\it expr}&pop selected stack frame without executing 404\opt{setting return value}\cr 405signal {\it num}&resume execution with signal {\it s} (none if {\tt 0})\cr 406jump {\it line}\par 407jump *{\it address}&resume execution at specified {\it line} number or 408{\it address}\cr 409set var={\it expr}&evaluate {\it expr} without displaying it; use for 410altering program variables\cr 411\endsec 412 413\sec Display; 414print \opt{\tt/{\it f}\/} \opt{\it expr}\par 415p \opt{\tt/{\it f}\/} \opt{\it expr}&show value of {\it expr} \opt{or 416last value \tt \$} according to format {\it f}:\cr 417\qquad x&hexadecimal\cr 418\qquad d&signed decimal\cr 419\qquad u&unsigned decimal\cr 420\qquad o&octal\cr 421\qquad t&binary\cr 422\qquad a&address, absolute and relative\cr 423\qquad c&character\cr 424\qquad f&floating point\cr 425call \opt{\tt /{\it f}\/} {\it expr}&like {\tt print} but does not display 426{\tt void}\cr 427x \opt{\tt/{\it Nuf}\/} {\it expr}&examine memory at address {\it expr}; 428optional format spec follows slash\cr 429\quad {\it N}&count of how many units to display\cr 430\quad {\it u}&unit size; one of\cr 431&{\tt\qquad b}\ individual bytes\cr 432&{\tt\qquad h}\ halfwords (two bytes)\cr 433&{\tt\qquad w}\ words (four bytes)\cr 434&{\tt\qquad g}\ giant words (eight bytes)\cr 435\quad {\it f}&printing format. Any {\tt print} format, or\cr 436&{\tt\qquad s}\ null-terminated string\cr 437&{\tt\qquad i}\ machine instructions\cr 438disassem \opt{\it addr}&display memory as machine instructions\cr 439\endsec 440 441\sec Automatic Display; 442display \opt{\tt/\it f\/} {\it expr}&show value of {\it expr} each time 443program stops \opt{according to format {\it f}\/}\cr 444display&display all enabled expressions on list\cr 445undisplay {\it n}&remove number(s) {\it n} from list of 446automatically displayed expressions\cr 447disable disp {\it n}&disable display for expression(s) number {\it 448n}\cr 449enable disp {\it n}&enable display for expression(s) number {\it 450n}\cr 451info display&numbered list of display expressions\cr 452\endsec 453 454\vfill\eject 455 456\sec Expressions; 457{\it expr}&an expression in C, C++, or Modula-2 (including function calls), or:\cr 458{\it addr\/}@{\it len}&an array of {\it len} elements beginning at {\it 459addr}\cr 460{\it file}::{\it nm}&a variable or function {\it nm} defined in {\it 461file}\cr 462$\tt\{${\it type}$\tt\}${\it addr}&read memory at {\it addr} as specified 463{\it type}\cr 464\$&most recent displayed value\cr 465\${\it n}&{\it n}th displayed value\cr 466\$\$&displayed value previous to \$\cr 467\$\${\it n}&{\it n}th displayed value back from \$\cr 468\$\_&last address examined with {\tt x}\cr 469\$\_\_&value at address \$\_\cr 470\${\it var}&convenience variable; assign any value\cr 471\cr 472show values \opt{{\it n}}&show last 10 values \opt{or surrounding 473\${\it n}}\cr 474show conv&display all convenience variables\cr 475\endsec 476 477\sec Symbol Table; 478info address {\it s}&show where symbol {\it s} is stored\cr 479info func \opt{\it regex}&show names, types of defined functions 480(all, or matching {\it regex})\cr 481info var \opt{\it regex}&show names, types of global variables (all, 482or matching {\it regex})\cr 483whatis \opt{\it expr}\par 484ptype \opt{\it expr}&show data type of {\it expr} \opt{or \tt \$} 485without evaluating; {\tt ptype} gives more detail\cr 486ptype {\it type}&describe type, struct, union, or enum\cr 487\endsec 488 489\sec GDB Scripts; 490source {\it script}&read, execute GDB commands from file {\it 491script}\cr 492\cr 493define {\it cmd}\par 494\qquad {\it command-list}&create new GDB command {\it cmd}; 495execute script defined by {\it command-list}\cr 496end&end of {\it command-list}\cr 497document {\it cmd}\par 498\qquad {\it help-text}&create online documentation 499for new GDB command {\it cmd}\cr 500end&end of {\it help-text}\cr 501\endsec 502 503\sec Signals; 504handle {\it signal} {\it act}&specify GDB actions for {\it signal}:\cr 505\quad print&announce signal\cr 506\quad noprint&be silent for signal\cr 507\quad stop&halt execution on signal\cr 508\quad nostop&do not halt execution\cr 509\quad pass&allow your program to handle signal\cr 510\quad nopass&do not allow your program to see signal\cr 511info signals&show table of signals, GDB action for each\cr 512\endsec 513 514\sec Debugging Targets; 515target {\it type} {\it param}&connect to target machine, process, or file\cr 516help target&display available targets\cr 517attach {\it param}&connect to another process\cr 518detach&release target from GDB control\cr 519\endsec 520 521\vfill\eject 522\sec Controlling GDB; 523set {\it param} {\it value}&set one of GDB's internal parameters\cr 524show {\it param}&display current setting of parameter\cr 525\xtra{\rm Parameters understood by {\tt set} and {\tt show}:} 526\quad complaint {\it limit}&number of messages on unusual symbols\cr 527\quad confirm {\it on/off}&enable or disable cautionary queries\cr 528\quad editing {\it on/off}&control {\tt readline} command-line editing\cr 529\quad height {\it lpp}&number of lines before pause in display\cr 530\quad language {\it lang}&Language for GDB expressions ({\tt auto}, {\tt c} or 531{\tt modula-2})\cr 532\quad listsize {\it n}&number of lines shown by {\tt list}\cr 533\quad prompt {\it str}&use {\it str} as GDB prompt\cr 534\quad radix {\it base}&octal, decimal, or hex number representation\cr 535\quad verbose {\it on/off}&control messages when loading 536symbols\cr 537\quad width {\it cpl}&number of characters before line folded\cr 538\quad write {\it on/off}&Allow or forbid patching binary, core files 539(when reopened with {\tt exec} or {\tt core}) 540\cr 541\quad history $\ldots$\par 542\quad h $\ldots$&groups with the following options:\cr 543\quad h exp {\it off/on}&disable/enable {\tt readline} history expansion\cr 544\quad h file {\it filename}&file for recording GDB command history\cr 545\quad h size {\it size}&number of commands kept in history list\cr 546\quad h save {\it off/on}&control use of external file for 547command history\cr 548\cr 549\quad print $\ldots$\par 550\quad p $\ldots$&groups with the following options:\cr 551\quad p address {\it on/off}&print memory addresses in stacks, 552values\cr 553\quad p array {\it off/on}&compact or attractive format for 554arrays\cr 555\quad p demangl {\it on/off}&source (demangled) or internal form for C++ 556symbols\cr 557\quad p asm-dem {\it on/off}&demangle C++ symbols in 558machine-instruction output\cr 559\quad p elements {\it limit}&number of array elements to display\cr 560\quad p object {\it on/off}&print C++ derived types for objects\cr 561\quad p pretty {\it off/on}&struct display: compact or indented\cr 562\quad p union {\it on/off}&display of union members\cr 563\quad p vtbl {\it off/on}&display of C++ virtual function 564tables\cr 565\cr 566show commands&show last 10 commands\cr 567show commands {\it n}&show 10 commands around number {\it n}\cr 568show commands +&show next 10 commands\cr 569\endsec 570 571\sec Working Files; 572file \opt{\it file}&use {\it file} for both symbols and executable; 573with no arg, discard both\cr 574core \opt{\it file}&read {\it file} as coredump; or discard\cr 575exec \opt{\it file}&use {\it file} as executable only; or discard\cr 576symbol \opt{\it file}&use symbol table from {\it file}; or discard\cr 577load {\it file}&dynamically link {\it file\/} and add its symbols\cr 578add-sym {\it file} {\it addr}&read additional symbols from {\it file}, 579dynamically loaded at {\it addr}\cr 580info files&display working files and targets in use\cr 581path {\it dirs}&add {\it dirs} to front of path searched for 582executable and symbol files\cr 583show path&display executable and symbol file path\cr 584info share&list names of shared libraries currently loaded\cr 585\endsec 586 587\vfill\eject 588\sec Source Files; 589dir {\it names}&add directory {\it names} to front of source path\cr 590dir&clear source path\cr 591show dir&show current source path\cr 592\cr 593list&show next ten lines of source\cr 594list -&show previous ten lines\cr 595list {\it lines}&display source surrounding {\it lines}, 596specified as:\cr 597\quad{\opt{\it file\tt:}\it num}&line number \opt{in named file}\cr 598\quad{\opt{\it file\tt:}\it function}&beginning of function \opt{in 599named file}\cr 600\quad{\tt +\it off}&{\it off} lines after last printed\cr 601\quad{\tt -\it off}&{\it off} lines previous to last printed\cr 602\quad{\tt*\it address}&line containing {\it address}\cr 603list {\it f},{\it l}&from line {\it f} to line {\it l}\cr 604info line {\it num}&show starting, ending addresses of compiled code for 605source line {\it num}\cr 606info source&show name of current source file\cr 607info sources&list all source files in use\cr 608forw {\it regex}&search following source lines for {\it regex}\cr 609rev {\it regex}&search preceding source lines for {\it regex}\cr 610\endsec 611 612\sec GDB under GNU Emacs; 613M-x gdb&run GDB under Emacs\cr 614\ctl{h} m&describe GDB mode\cr 615M-s&step one line ({\tt step})\cr 616M-n&next line ({\tt next})\cr 617M-i&step one instruction ({\tt stepi})\cr 618\ctl{c} \ctl{f}&finish current stack frame ({\tt finish})\cr 619M-c&continue ({\tt cont})\cr 620M-u&up {\it arg} frames ({\tt up})\cr 621M-d&down {\it arg} frames ({\tt down})\cr 622\ctl{x} \&© number from point, insert at end\cr 623\ctl{x} SPC&(in source file) set break at point\cr 624\endsec 625 626\sec GDB License; 627show copying&Display GNU General Public License\cr 628show warranty&There is NO WARRANTY for GDB. Display full no-warranty 629statement.\cr 630\endsec 631 632 633\vfill 634{\smrm\parskip=6pt 635Copyright \copyright 1991-2020 Free Software Foundation, Inc. 636Author: Roland H. Pesch 637 638The author assumes no responsibility for any errors on this card. 639 640This card may be freely distributed under the terms of the GNU 641General Public License. 642 643Please contribute to development of this card by 644annotating it. Improvements can be sent to bug-gdb@gnu.org. 645 646GDB itself is free software; you are welcome to distribute copies of 647it under the terms of the GNU General Public License. There is 648absolutely no warranty for GDB. 649} 650\end 651