You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
5.0KB

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- Copyright (C) 1992-2020 Free Software Foundation, Inc.
  4. Contributed by Cygnus Support. Written by Julia Menapace, Jim Kingdon,
  5. and David MacKenzie.
  6. Permission is granted to copy, distribute and/or modify this document
  7. under the terms of the GNU Free Documentation License, Version 1.3 or
  8. any later version published by the Free Software Foundation; with no
  9. Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
  10. Texts. A copy of the license is included in the section entitled "GNU
  11. Free Documentation License". -->
  12. <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
  13. <head>
  14. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  15. <title>Stabs Format (STABS)</title>
  16. <meta name="description" content="Stabs Format (STABS)">
  17. <meta name="keywords" content="Stabs Format (STABS)">
  18. <meta name="resource-type" content="document">
  19. <meta name="distribution" content="global">
  20. <meta name="Generator" content="makeinfo">
  21. <link href="index.html#Top" rel="start" title="Top">
  22. <link href="Symbol-Types-Index.html#Symbol-Types-Index" rel="index" title="Symbol Types Index">
  23. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  24. <link href="Overview.html#Overview" rel="up" title="Overview">
  25. <link href="String-Field.html#String-Field" rel="next" title="String Field">
  26. <link href="Flow.html#Flow" rel="prev" title="Flow">
  27. <style type="text/css">
  28. <!--
  29. a.summary-letter {text-decoration: none}
  30. blockquote.indentedblock {margin-right: 0em}
  31. blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
  32. blockquote.smallquotation {font-size: smaller}
  33. div.display {margin-left: 3.2em}
  34. div.example {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.smalllisp {margin-left: 3.2em}
  39. kbd {font-style: oblique}
  40. pre.display {font-family: inherit}
  41. pre.format {font-family: inherit}
  42. pre.menu-comment {font-family: serif}
  43. pre.menu-preformatted {font-family: serif}
  44. pre.smalldisplay {font-family: inherit; font-size: smaller}
  45. pre.smallexample {font-size: smaller}
  46. pre.smallformat {font-family: inherit; font-size: smaller}
  47. pre.smalllisp {font-size: smaller}
  48. span.nolinebreak {white-space: nowrap}
  49. span.roman {font-family: initial; font-weight: normal}
  50. span.sansserif {font-family: sans-serif; font-weight: normal}
  51. ul.no-bullet {list-style: none}
  52. -->
  53. </style>
  54. </head>
  55. <body lang="en">
  56. <a name="Stabs-Format"></a>
  57. <div class="header">
  58. <p>
  59. Next: <a href="String-Field.html#String-Field" accesskey="n" rel="next">String Field</a>, Previous: <a href="Flow.html#Flow" accesskey="p" rel="prev">Flow</a>, Up: <a href="Overview.html#Overview" accesskey="u" rel="up">Overview</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Symbol-Types-Index.html#Symbol-Types-Index" title="Index" rel="index">Index</a>]</p>
  60. </div>
  61. <hr>
  62. <a name="Overview-of-Stab-Format"></a>
  63. <h3 class="section">1.2 Overview of Stab Format</h3>
  64. <p>There are three overall formats for stab assembler directives,
  65. differentiated by the first word of the stab. The name of the directive
  66. describes which combination of four possible data fields follows. It is
  67. either <code>.stabs</code> (string), <code>.stabn</code> (number), or <code>.stabd</code>
  68. (dot). IBM&rsquo;s XCOFF assembler uses <code>.stabx</code> (and some other
  69. directives such as <code>.file</code> and <code>.bi</code>) instead of
  70. <code>.stabs</code>, <code>.stabn</code> or <code>.stabd</code>.
  71. </p>
  72. <p>The overall format of each class of stab is:
  73. </p>
  74. <div class="example">
  75. <pre class="example">.stabs &quot;<var>string</var>&quot;,<var>type</var>,<var>other</var>,<var>desc</var>,<var>value</var>
  76. .stabn <var>type</var>,<var>other</var>,<var>desc</var>,<var>value</var>
  77. .stabd <var>type</var>,<var>other</var>,<var>desc</var>
  78. .stabx &quot;<var>string</var>&quot;,<var>value</var>,<var>type</var>,<var>sdb-type</var>
  79. </pre></div>
  80. <p>For <code>.stabn</code> and <code>.stabd</code>, there is no <var>string</var> (the
  81. <code>n_strx</code> field is zero; see <a href="Symbol-Tables.html#Symbol-Tables">Symbol Tables</a>). For
  82. <code>.stabd</code>, the <var>value</var> field is implicit and has the value of
  83. the current file location. For <code>.stabx</code>, the <var>sdb-type</var> field
  84. is unused for stabs and can always be set to zero. The <var>other</var>
  85. field is almost always unused and can be set to zero.
  86. </p>
  87. <p>The number in the <var>type</var> field gives some basic information about
  88. which type of stab this is (or whether it <em>is</em> a stab, as opposed
  89. to an ordinary symbol). Each valid type number defines a different stab
  90. type; further, the stab type defines the exact interpretation of, and
  91. possible values for, any remaining <var>string</var>, <var>desc</var>, or
  92. <var>value</var> fields present in the stab. See <a href="Stab-Types.html#Stab-Types">Stab Types</a>, for a list
  93. in numeric order of the valid <var>type</var> field values for stab directives.
  94. </p>
  95. </body>
  96. </html>