8 <center><h1>LLVM: <tt>llvm-nm</tt> tool</h1></center>
15 <tt>llvm-nm [options] [filenames...]</tt>
19 <p>The <tt>llvm-nm</tt> utility lists the names of symbols from the
20 LLVM bytecode files named on the command line, along with some
21 ancillary information about each symbol. If no filename is specified,
22 or - is used as a filename, <tt>llvm-nm</tt> reads its input from standard
25 <p><tt>llvm-nm</tt>'s default output format is the traditional BSD
26 <tt>nm(1)</tt> output format. Each such output record consists of an
27 (optional) 8-digit hexadecimal address, followed by a type code
28 character, followed by a name, for each symbol. One record is printed
29 per line; fields are separated by spaces. When the address is omitted,
30 it is replaced by 8 spaces.</p>
32 <p>Type code characters currently supported, and their meanings, are
36 <tr><td>U</td><td>Named object is referenced but undefined in this
37 bytecode file</td></tr>
38 <tr><td>C</td><td>Common (multiple defs link together into one
40 <tr><td>W</td><td>Weak reference (multiple defs link together into zero or
42 <tr><td>t</td><td>Local function (text) object</td></tr>
43 <tr><td>T</td><td>Global function (text) object</td></tr>
44 <tr><td>d</td><td>Local data object</td></tr>
45 <tr><td>D</td><td>Global data object</td></tr>
46 <tr><td>?</td><td>Something unrecognizable</td></tr>
49 <p>Because LLVM bytecode files typically contain objects that are not
50 considered to have addresses until they are linked into an executable
51 image or dynamically compiled "just-in-time", <tt>llvm-nm</tt> does
52 not print an address for any symbol, even symbols which are defined in
53 the bytecode file.</p>
60 Use POSIX.2 output format. Alias for --format=posix.
64 Use BSD output format. Alias for --format=bsd.
69 Print a summary of command-line options and their meanings.
74 Print only symbols defined in this bytecode file (as opposed
75 to symbols which may be referenced by objects in this file,
76 but not defined in this file.)
81 Print only symbols whose definitions are external; that is,
82 accessible from other bytecode files.
85 <li> -undefined-only, -u
87 Print only symbols referenced but not defined in this bytecode
91 <li> -format=<i>fmt</i>, -f
93 Select an output format; <i>fmt</i> may be sysv, posix, or
94 bsd. The default is bsd.
100 <tt>llvm-nm</tt> cannot currently see inside <tt>ar(1)</tt> library
101 archive files, like <tt>nm(1)</tt> can. It cannot demangle C++ mangled
102 names, like GNU <tt>nm(1)</tt> can.
106 <tt>llvm-nm</tt> exits with an exit code of zero.
110 <a href="llvm-dis.html"><tt>llvm-dis</tt></a>,
115 Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>.