DragonFly On-Line Manual Pages

Search: Section:  


LLVM-NM(1)			     LLVM			    LLVM-NM(1)

NAME

llvm-nm - list LLVM bitcode and object file's symbol table

SYNOPSIS

llvm-nm [options] [filenames...]

DESCRIPTION

The llvm-nm utility lists the names of symbols from the LLVM bitcode files, object files, or ar archives containing them, named on the com- mand line. Each symbol is listed along with some simple information about its provenance. If no file name is specified, or - is used as a file name, llvm-nm will process a file on its standard input stream. llvm-nm's default output format is the traditional BSD nm output for- mat. Each such output record consists of an (optional) 8-digit hexa- decimal 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: U Named object is referenced but undefined in this bitcode file C Common (multiple definitions link together into one def) W Weak reference (multiple definitions link together into zero or one definitions) t Local function (text) object T Global function (text) object d Local data object D Global data object ? Something unrecognizable Because LLVM bitcode files typically contain objects that are not con- sidered to have addresses until they are linked into an executable image or dynamically compiled "just-in-time", llvm-nm does not print an address for any symbol in an LLVM bitcode file, even symbols which are defined in the bitcode file.

OPTIONS

-B (default) Use BSD output format. Alias for --format=bsd. -P Use POSIX.2 output format. Alias for --format=posix. --debug-syms, -a Show all symbols, even debugger only. --defined-only Print only symbols defined in this file (as opposed to symbols which may be referenced by objects in this file, but not defined in this file.) --dynamic, -D Display dynamic symbols instead of normal symbols. --extern-only, -g Print only symbols whose definitions are external; that is, accessible from other files. --format=format, -f format Select an output format; format may be sysv, posix, or bsd. The default is bsd. -help Print a summary of command-line options and their meanings. --no-sort, -p Shows symbols in order encountered. --numeric-sort, -n, -v Sort symbols by address. --print-file-name, -A, -o Precede each symbol with the file it came from. --print-size, -S Show symbol size instead of address. --size-sort Sort symbols by size. --undefined-only, -u Print only symbols referenced but not defined in this file.

BUGS

o llvm-nm cannot demangle C++ mangled names, like GNU nm can. o llvm-nm does not support the full set of arguments that GNU nm does.

EXIT STATUS

llvm-nm exits with an exit code of zero.

SEE ALSO

llvm-dis, ar(1), nm(1)

AUTHOR

Maintained by The LLVM Team (http://llvm.org/).

COPYRIGHT

2003-2017, LLVM Project 3.7 2017-02-22 LLVM-NM(1)

Search: Section: