Altering.html 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- Copyright (C) 1988-2020 Free Software Foundation, Inc.
  4. Permission is granted to copy, distribute and/or modify this document
  5. under the terms of the GNU Free Documentation License, Version 1.3 or
  6. any later version published by the Free Software Foundation; with the
  7. Invariant Sections being "Free Software" and "Free Software Needs
  8. Free Documentation", with the Front-Cover Texts being "A GNU Manual,"
  9. and with the Back-Cover Texts as in (a) below.
  10. (a) The FSF's Back-Cover Text is: "You are free to copy and modify
  11. this GNU Manual. Buying copies from GNU Press supports the FSF in
  12. developing GNU and promoting software freedom." -->
  13. <!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
  14. <head>
  15. <title>Debugging with GDB: Altering</title>
  16. <meta name="description" content="Debugging with GDB: Altering">
  17. <meta name="keywords" content="Debugging with GDB: Altering">
  18. <meta name="resource-type" content="document">
  19. <meta name="distribution" content="global">
  20. <meta name="Generator" content="makeinfo">
  21. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  22. <link href="index.html#Top" rel="start" title="Top">
  23. <link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
  24. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  25. <link href="index.html#Top" rel="up" title="Top">
  26. <link href="Assignment.html#Assignment" rel="next" title="Assignment">
  27. <link href="Symbols.html#Symbols" rel="previous" title="Symbols">
  28. <style type="text/css">
  29. <!--
  30. a.summary-letter {text-decoration: none}
  31. blockquote.smallquotation {font-size: smaller}
  32. div.display {margin-left: 3.2em}
  33. div.example {margin-left: 3.2em}
  34. div.indentedblock {margin-left: 3.2em}
  35. div.lisp {margin-left: 3.2em}
  36. div.smalldisplay {margin-left: 3.2em}
  37. div.smallexample {margin-left: 3.2em}
  38. div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
  39. div.smalllisp {margin-left: 3.2em}
  40. kbd {font-style:oblique}
  41. pre.display {font-family: inherit}
  42. pre.format {font-family: inherit}
  43. pre.menu-comment {font-family: serif}
  44. pre.menu-preformatted {font-family: serif}
  45. pre.smalldisplay {font-family: inherit; font-size: smaller}
  46. pre.smallexample {font-size: smaller}
  47. pre.smallformat {font-family: inherit; font-size: smaller}
  48. pre.smalllisp {font-size: smaller}
  49. span.nocodebreak {white-space:nowrap}
  50. span.nolinebreak {white-space:nowrap}
  51. span.roman {font-family:serif; font-weight:normal}
  52. span.sansserif {font-family:sans-serif; font-weight:normal}
  53. ul.no-bullet {list-style: none}
  54. -->
  55. </style>
  56. </head>
  57. <body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
  58. <a name="Altering"></a>
  59. <div class="header">
  60. <p>
  61. Next: <a href="GDB-Files.html#GDB-Files" accesskey="n" rel="next">GDB Files</a>, Previous: <a href="Symbols.html#Symbols" accesskey="p" rel="previous">Symbols</a>, Up: <a href="index.html#Top" accesskey="u" rel="up">Top</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
  62. </div>
  63. <hr>
  64. <a name="Altering-Execution"></a>
  65. <h2 class="chapter">17 Altering Execution</h2>
  66. <p>Once you think you have found an error in your program, you might want to
  67. find out for certain whether correcting the apparent error would lead to
  68. correct results in the rest of the run. You can find the answer by
  69. experiment, using the <small>GDB</small> features for altering execution of the
  70. program.
  71. </p>
  72. <p>For example, you can store new values into variables or memory
  73. locations, give your program a signal, restart it at a different
  74. address, or even return prematurely from a function.
  75. </p>
  76. <table class="menu" border="0" cellspacing="0">
  77. <tr><td align="left" valign="top">&bull; <a href="Assignment.html#Assignment" accesskey="1">Assignment</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Assignment to variables
  78. </td></tr>
  79. <tr><td align="left" valign="top">&bull; <a href="Jumping.html#Jumping" accesskey="2">Jumping</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Continuing at a different address
  80. </td></tr>
  81. <tr><td align="left" valign="top">&bull; <a href="Signaling.html#Signaling" accesskey="3">Signaling</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Giving your program a signal
  82. </td></tr>
  83. <tr><td align="left" valign="top">&bull; <a href="Returning.html#Returning" accesskey="4">Returning</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Returning from a function
  84. </td></tr>
  85. <tr><td align="left" valign="top">&bull; <a href="Calling.html#Calling" accesskey="5">Calling</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Calling your program&rsquo;s functions
  86. </td></tr>
  87. <tr><td align="left" valign="top">&bull; <a href="Patching.html#Patching" accesskey="6">Patching</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Patching your program
  88. </td></tr>
  89. <tr><td align="left" valign="top">&bull; <a href="Compiling-and-Injecting-Code.html#Compiling-and-Injecting-Code" accesskey="7">Compiling and Injecting Code</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Compiling and injecting code in <small>GDB</small>
  90. </td></tr>
  91. </table>
  92. </body>
  93. </html>