LLVM-NM(1)



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  im-
       age  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, ac-
              cessible from other files.

       --no-weak, -W
              Don't print any weak symbols in the output.

       --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.

       --radix=RADIX, -t
              Specify  the  radix  of  the symbol address(es). Values accepted
              d(decimal), x(hexadecomal) and o(octal).

BUGS
          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 (https://llvm.org/).

COPYRIGHT
       2003-2020, LLVM Project

8                                 2020-03-19                        LLVM-NM(1)

Man(1) output converted with man2html
list of all man pages