3 <title>GDB Internals
</title>
4 <meta http-equiv=
"Content-Type" content=
"text/html">
5 <meta name=
"description" content=
"GDB Internals">
6 <meta name=
"generator" content=
"makeinfo 4.3">
7 <link href=
"http://www.gnu.org/software/texinfo/" rel=
"generator-home">
12 Node:
<a name=
"Support%20Libraries">Support Libraries
</a>,
13 Next:
<a rel=
"next" accesskey=
"n" href=
"Coding.html#Coding">Coding
</a>,
14 Previous:
<a rel=
"previous" accesskey=
"p" href=
"Native-Debugging.html#Native%20Debugging">Native Debugging
</a>,
15 Up:
<a rel=
"up" accesskey=
"u" href=
"index.html#Top">Top
</a>
19 <h2 class=
"chapter">Support Libraries
</h2>
21 <h3 class=
"section">BFD
</h3>
23 <p>BFD provides support for GDB in several ways:
26 <dt><em>identifying executable and core files
</em>
27 <dd>BFD will identify a variety of file types, including a.out, coff, and
28 several variants thereof, as well as several kinds of core files.
30 <br><dt><em>access to sections of files
</em>
31 <dd>BFD parses the file headers to determine the names, virtual addresses,
32 sizes, and file locations of all the various named sections in files
33 (such as the text section or the data section). GDB simply
34 calls BFD to read or write section
<var>x
</var> at byte offset
<var>y
</var> for
37 <br><dt><em>specialized core file support
</em>
38 <dd>BFD provides routines to determine the failing command name stored in a
39 core file, the signal with which the program failed, and whether a core
40 file matches (i.e. could be a core dump of) a particular executable
43 <br><dt><em>locating the symbol information
</em>
44 <dd>GDB uses an internal interface of BFD to determine where to find the
45 symbol information in an executable file or symbol-file. GDB itself
46 handles the reading of symbols, since BFD does not
"understand" debug
47 symbols, but GDB uses BFD's cached information to find the symbols,
51 <h3 class=
"section">opcodes
</h3>
53 <p>The opcodes library provides GDB's disassembler. (It's a separate
54 library because it's also used in binutils, for
<code>objdump
</code>).
56 <h3 class=
"section">readline
</h3>
58 <h3 class=
"section">mmalloc
</h3>
60 <h3 class=
"section">libiberty
</h3>
62 <h3 class=
"section">gnu-regex
</h3>
64 <p>Regex conditionals.
67 <dt><code>C_ALLOCA
</code>
69 <br><dt><code>NFAILURES
</code>
71 <br><dt><code>RE_NREGS
</code>
73 <br><dt><code>SIGN_EXTEND_CHAR
</code>
75 <br><dt><code>SWITCH_ENUM_BUG
</code>
77 <br><dt><code>SYNTAX_TABLE
</code>
79 <br><dt><code>Sword
</code>
81 <br><dt><code>sparc
</code>
84 <h3 class=
"section">include
</h3>