llvm.org GIT mirror llvm / 097d54d
[docs][llvm-nm] Improve symbol code documentation The existing symbol code documentation was very incomplete. This patch adds the missing codes, and defines them based on the current code behaviour. Fixes https://bugs.llvm.org/show_bug.cgi?id=42231. Reviewed by: rupprecht, mtrent, MaskRay Differential Revision: https://reviews.llvm.org/D63327 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364171 91177308-0d34-0410-b5e6-96231b3b80d8 James Henderson a month ago
1 changed file(s) with 79 addition(s) and 24 deletion(s). Raw diff Collapse all Expand all
2121 each symbol. One record is printed per line; fields are separated by spaces.
2222 When the address is omitted, it is replaced by 8 spaces.
2323
24 Type code characters currently supported, and their meanings, are as follows:
24 Type code characters currently supported, and their meanings, are as follows.
25 Where both lower and upper-case characters are listed for the same meaning, a
26 lower-case character represents a local symbol, whilst an upper-case character
27 represents a global (external) symbol:
28
29
30 a, A
31
32 Absolute symbol.
33
34 b, B
35
36 Unitialized data (bss) object.
37
38 C
39
40 Common symbol. Multiple definitions link together into one definition.
41
42 d, D
43
44 Writable data object.
45
46 i, I
47
48 COFF: .idata symbol or symbol in a section with IMAGE_SCN_LNK_INFO set.
49
50 n
51
52 ELF: local symbol from non-alloc section.
53
54 COFF: debug symbol.
55
56 N
57
58 ELF: debug section symbol, or global symbol from non-alloc section.
59
60 s, S
61
62 COFF: section symbol.
63
64 Mach-O: absolute symbol or symbol from a section other than __TEXT_EXEC __text,
65 __TEXT __text, __DATA __data, or __DATA __bss.
66
67 r, R
68
69 Read-only data object.
70
71 t, T
72
73 Code (text) object.
74
75 u
76
77 ELF: GNU unique symbol.
2578
2679 U
2780
28 Named object is referenced but undefined in this bitcode file
29
30 C
31
32 Common (multiple definitions link together into one def)
81 Named object is undefined in this file.
82
83 v
84
85 ELF: Undefined weak object. It is not a link failure if the object is not
86 defined.
87
88 V
89
90 ELF: Defined weak object symbol. This definition will only be used if no
91 regular definitions exist in a link. If multiple weak definitions and no
92 regular definitons exist, one of the weak definitions will be used.
93
94 w
95
96 Undefined weak symbol other than an ELF object symbol. It is not a link failure
97 if the symbol is not defined.
3398
3499 W
35100
36 Weak reference (multiple definitions link together into zero or one definitions)
37
38 t
39
40 Local function (text) object
41
42 T
43
44 Global function (text) object
45
46 d
47
48 Local data object
49
50 D
51
52 Global data object
101 Defined weak symbol other than an ELF object symbol. This definition will only
102 be used if no regular definitions exist in a link. If multiple weak definitions
103 and no regular definitons exist, one of the weak definitions will be used.
104
105 \-
106
107 Mach-O: N_STAB symbol.
53108
54109 ?
55110
56 Something unrecognizable
111 Something unrecognizable.
57112
58113 Because LLVM bitcode files typically contain objects that are not considered to
59114 have addresses until they are linked into an executable image or dynamically