Initial bulk commit for "Git on MSys"
[msysgit/historical-msysgit.git] / mingw / info / stabs / Transformations-On-Symbol-Tables.html
blob98e5b30ec5b2ab89154cb25430e1e1459f5ef219
1 <html lang="en">
2 <head>
3 <title>STABS</title>
4 <meta http-equiv="Content-Type" content="text/html">
5 <meta name="description" content="STABS">
6 <meta name="generator" content="makeinfo 4.3">
7 <link href="http://www.gnu.org/software/texinfo/" rel="generator-home">
8 </head>
9 <body>
10 <div class="node">
11 <p>
12 Node:<a name="Transformations%20On%20Symbol%20Tables">Transformations On Symbol Tables</a>,
13 Previous:<a rel="previous" accesskey="p" href="Symbol-Table-Format.html#Symbol%20Table%20Format">Symbol Table Format</a>,
14 Up:<a rel="up" accesskey="u" href="Symbol-Tables.html#Symbol%20Tables">Symbol Tables</a>
15 <hr><br>
16 </div>
18 <h3 class="section">Transformations on Symbol Tables</h3>
20 <p>The linker concatenates object files and does fixups of externally
21 defined symbols.
23 <p>You can see the transformations made on stab data by the assembler and
24 linker by examining the symbol table after each pass of the build. To
25 do this, use <code>nm -ap</code>, which dumps the symbol table, including
26 debugging information, unsorted. For stab entries the columns are:
27 <var>value</var>, <var>other</var>, <var>desc</var>, <var>type</var>, <var>string</var>. For
28 assembler and linker symbols, the columns are: <var>value</var>, <var>type</var>,
29 <var>string</var>.
31 <p>The low 5 bits of the stab type tell the linker how to relocate the
32 value of the stab. Thus for stab types like <code>N_RSYM</code> and
33 <code>N_LSYM</code>, where the value is an offset or a register number, the
34 low 5 bits are <code>N_ABS</code>, which tells the linker not to relocate the
35 value.
37 <p>Where the value of a stab contains an assembly language label,
38 it is transformed by each build step. The assembler turns it into a
39 relocatable address and the linker turns it into an absolute address.
41 <ul class="menu">
42 <li><a accesskey="1" href="Transformations-On-Static-Variables.html#Transformations%20On%20Static%20Variables">Transformations On Static Variables</a>:
43 <li><a accesskey="2" href="Transformations-On-Global-Variables.html#Transformations%20On%20Global%20Variables">Transformations On Global Variables</a>:
44 <li><a accesskey="3" href="Stab-Section-Transformations.html#Stab%20Section%20Transformations">Stab Section Transformations</a>: For some object file formats,
45 things are a bit different.
46 </ul>
48 </body></html>