From f18c06a3c641bcce57b5895d8b6d07a1291ae0ad Mon Sep 17 00:00:00 2001 From: Brian Gaeke Date: Thu, 1 Jul 2004 19:40:36 +0000 Subject: [PATCH] llvm-nm pod format man page. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14542 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/CommandGuide/llvm-nm.pod | 123 ++++++++++++++++++++++++++++++++++ 1 file changed, 123 insertions(+) create mode 100644 docs/CommandGuide/llvm-nm.pod diff --git a/docs/CommandGuide/llvm-nm.pod b/docs/CommandGuide/llvm-nm.pod new file mode 100644 index 00000000000..62080808a04 --- /dev/null +++ b/docs/CommandGuide/llvm-nm.pod @@ -0,0 +1,123 @@ +=pod + +=head1 NAME + +llvm-nm - list LLVM bytecode file's symbol table + +=head1 SYNOPSIS + +llvm-nm [options] [filenames...] + +=head1 DESCRIPTION + +The B utility lists the names of symbols from the LLVM bytecode files, +or B archives containing LLVM bytecode files, named on the command line. +Each symbol is listed along with some simple information about its provenance. +If no filename is specified, or I<-> is used as a filename, B will +process a bytecode file on its standard input stream. + +B's default output format is the traditional BSD B 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. + +Type code characters currently supported, and their meanings, are as follows: + +=over + +=item U + +Named object is referenced but undefined in this bytecode file + +=item C + +Common (multiple defs link together into one def) + +=item W + +Weak reference (multiple defs link together into zero or one defs) + +=item t + +Local function (text) object + +=item T + +Global function (text) object + +=item d + +Local data object + +=item D + +Global data object + +=item ? + +Something unrecognizable + +=back + +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", B does not print an address for any symbol, +even symbols which are defined in the bytecode file. + +=head1 OPTIONS + +=over + +=item B<-P> + +Use POSIX.2 output format. Alias for B<--format=posix>. + +=item B<-B> (default) + +Use BSD output format. Alias for B<--format=bsd>. + +=item B<--help> + +Print a summary of command-line options and their meanings. + +=item B<--defined-only> + +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.) + +=item B<--extern-only>, B<-g> + +Print only symbols whose definitions are external; that is, accessible +from other bytecode files. + +=item B<--undefined-only>, B<-u> + +Print only symbols referenced but not defined in this bytecode file. + +=item B<--format=>I, B<-f> + +Select an output format; I may be I, I, or I. The +default is I. + +=back + +=head1 BUGS + +B cannot demangle C++ mangled names, like GNU B can. + +=head1 EXIT STATUS + +B exits with an exit code of zero. + +=head1 SEE ALSO + +L, L, L + +=head1 AUTHOR + +Maintained by the LLVM Team (L). + +=cut +