Manual entries and global execution of binaries
GNU nm lists the symbols from object files objfile …. If no object files are listed as arguments, nm assumes the file a. The symbol is common. Common symbols are uninitialized data. When linking, multiple common symbols may appear with the same name.
If the symbol is defined anywhere, the common symbols are treated as undefined references. For more details on common symbols, see the discussion of —warn-common in Linker options in The GNU linker. The symbol is in an initialized data section for small objects. Some object file formats permit more efficient access to small data objects, such as a global int variable as opposed to a large global array. For PE format files this indicates that the symbol is in a section specific to the implementation of DLLs.
For ELF format files this indicates that the symbol is an indirect function. It indicates a symbol which if referenced by a relocation does not evaluate to its address, but instead must be invoked at runtime. The runtime execution will then return the value to be used in the relocation. The symbol is a unique global symbol.
For such a symbol the dynamic linker will make sure manual entries and global execution of binaries in the entire process there is just one symbol with this name and type in use. The symbol is a weak object. When a weak defined symbol is linked with a normal defined manual entries and global execution of binaries, the normal defined symbol is used with no error. When a weak undefined symbol is linked and the symbol is not defined, the value of the weak symbol becomes zero with no error.
On some systems, uppercase indicates that a default value has been specified. The symbol is a weak symbol that has not been specifically tagged as a weak object symbol.
When a weak undefined symbol is linked and the symbol is not defined, the value of the symbol is determined in a system-specific manner without error. The symbol is a stabs symbol in an a. In this case, the next values printed manual entries and global execution of binaries the stabs other field, the stabs desc field, and the stab type. Stabs symbols are used to hold debugging information. Precede each symbol by the name of the input file or archive member in which it was found, rather than identifying the input file once only, before all of its symbols.
Decode demangle low-level symbol names into manual entries and global execution of binaries names. Different compilers have different mangling styles. The optional demangling style argument can be used to choose an appropriate demangling style for your compiler. Display the dynamic symbols rather than the normal symbols.
This is only meaningful for dynamic objects, such as certain types of shared libraries. Use the output format formatwhich can be bsd manual entries and global execution of binaries, sysvor posix. The default is bsd. Only the first character of format is significant; it can be either upper or lower case. For each symbol, use debugging information to try to find a filename and line number. For a defined symbol, look for the line number of the address of the symbol.
For an undefined symbol, look for the line number of a relocation entry which refers to the symbol. If line number information can be found, print it after the other symbol information.
When option -l is active, if the address belongs to a function that was inlined, then this option causes the source information for all enclosing scopes back to the first non-inlined function to be printed as well. For example, if main inlines callee1 which inlines callee2and address is from callee2the source information for callee1 and main will also be printed.
Print both value and size of defined symbols for the bsd output style. When listing symbols from archive members, include the index: Use radix as the radix for printing the symbol values.
This option is ignored for compatibility with the AIX version of nm. Load the plugin called name to add support for extra target types. This option is only available if the toolchain has been built with plugin support enabled.
The GCC plugin is always backwards compatible with earlier versions, so it is sufficient to just copy the newest one. Sort symbols by size. For ELF objects symbol sizes are read from the ELF, for other object types the symbol sizes are computed as the difference between the value of the symbol and the value of the symbol with the next higher manual entries and global execution of binaries. Display symbols which have a target-specific special meaning.
These symbols are usually used by the target for some special processing and are not normally helpful when included in the normal symbol lists. Include synthetic symbols in the output. These are special symbols created by the linker for various purposes. Enables the display of symbol version information if any exists.
The version string is displayed as a suffix to the symbol name, preceeded by an character. If the version is the default version to be used when resolving unversioned references to the symbol then it is displayed as a suffix preceeded by two characters.
See Target Selectionfor more information.