[llvm-commits] CVS: llvm/docs/CommandGuide/llvm-nm.html
Brian Gaeke
gaeke at cs.uiuc.edu
Thu Oct 16 13:04:03 PDT 2003
Changes in directory llvm/docs/CommandGuide:
llvm-nm.html added (r1.1)
---
Log message:
Add command guide (It's like a man page translated into html, but without the
translation...) for the new llvm-nm tool.
---
Diffs of the changes: (+116 -0)
Index: llvm/docs/CommandGuide/llvm-nm.html
diff -c /dev/null llvm/docs/CommandGuide/llvm-nm.html:1.1
*** /dev/null Thu Oct 16 13:03:34 2003
--- llvm/docs/CommandGuide/llvm-nm.html Thu Oct 16 13:03:24 2003
***************
*** 0 ****
--- 1,116 ----
+ <html>
+ <title>
+ LLVM: llvm-nm tool
+ </title>
+
+ <body bgcolor=white>
+
+ <center><h1>LLVM: <tt>llvm-nm</tt> tool</h1></center>
+ <HR>
+
+ <h3>NAME</h3>
+ <tt>llvm-nm</tt>
+
+ <h3>SYNOPSIS</h3>
+ <tt>llvm-nm [options] [filenames...]</tt>
+
+ <h3>DESCRIPTION</h3>
+
+ <p>The <tt>llvm-nm</tt> utility lists the names of symbols from the
+ LLVM bytecode files named on the command line, along with some
+ ancillary information about each symbol.</p>
+
+ <p><tt>llvm-nm</tt>'s default output format is the traditional BSD
+ <tt>nm(1)</tt> output format. Each such output record consists of an
+ (optional) 8-digit hexadecimal address, followed by a type code
+ character, followed by a name, for each symbol. One record is printed
+ per line; fields are separated by spaces. When the address is omitted,
+ it is replaced by 8 spaces.</p>
+
+ <p>Type code characters currently supported, and their meanings, are
+ as follows:</p>
+
+ <table border>
+ <tr><td>U</td><td>Named object is referenced but undefined in this
+ bytecode file</td></tr>
+ <tr><td>C</td><td>Common (multiple defs link together into one
+ def)</td></tr>
+ <tr><td>W</td><td>Weak reference (multiple defs link together into zero or
+ one defs)</td></tr>
+ <tr><td>t</td><td>Local function (text) object</td></tr>
+ <tr><td>T</td><td>Global function (text) object</td></tr>
+ <tr><td>d</td><td>Local data object</td></tr>
+ <tr><td>D</td><td>Global data object</td></tr>
+ <tr><td>?</td><td>Something unrecognizable</td></tr>
+ </table>
+
+ <p>Because LLVM bytecode files typically contain objects that are not
+ considered to have addresses until they are linked into an executable
+ image or dynamically compiled "just-in-time", <tt>llvm-nm</tt> does
+ not print an address for any symbol, even symbols which are defined in
+ the bytecode file.</p>
+
+ <h3>OPTIONS</h3>
+
+ <ul>
+ <li> -P
+ <br>
+ Use POSIX.2 output format. Alias for --format=posix.
+ <p>
+ <li> -B (default)
+ <br>
+ Use BSD output format. Alias for --format=bsd.
+ <p>
+
+ <li> -help
+ <br>
+ Print a summary of command-line options and their meanings.
+ <p>
+
+ <li> -defined-only
+ <br>
+ Print only symbols defined in this bytecode file (as opposed
+ to symbols which may be referenced by objects in this file,
+ but not defined in this file.)
+ <p>
+
+ <li> -extern-only, -g
+ <br>
+ Print only symbols whose definitions are external; that is,
+ accessible from other bytecode files.
+ <p>
+
+ <li> -undefined-only, -u
+ <br>
+ Print only symbols referenced but not defined in this bytecode
+ file.
+ <p>
+
+ <li> -format=<i>fmt</i>, -f
+ <br>
+ Select an output format; <i>fmt</i> may be sysv, posix, or
+ bsd. The default is bsd.
+ <p>
+ </ul>
+
+ <h3>BUGS</h3>
+
+ <tt>llvm-nm</tt> cannot currently see inside <tt>ar(1)</tt> library
+ archive files, like <tt>nm(1)</tt> can. It cannot demangle C++ mangled
+ names, like GNU <tt>nm(1)</tt> can.
+
+ <h3>EXIT STATUS</h3>
+
+ <tt>llvm-nm</tt> exits with an exit code of zero.
+
+ <h3>SEE ALSO</h3>
+
+ <a href="llvm-dis.html"><tt>llvm-dis</tt></a>,
+ <tt>ar(1)</tt>,
+ <tt>nm(1)</tt>
+
+ <HR>
+ Maintained by the <a href="http://llvm.cs.uiuc.edu">LLVM Team</a>.
+ </body>
+ </html>
+
More information about the llvm-commits
mailing list