Merge from vendor branch OPENSSL:
[dragonfly.git] / contrib / binutils-2.17 / binutils / doc / addr2line.1
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.32
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
29 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
30 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
31 .\" nothing in troff, for use with C<>.
32 .tr \(*W-
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD.  Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
55 .if \nF \{\
56 .    de IX
57 .    tm Index:\\$1\t\\n%\t"\\$2"
58 ..
59 .    nr % 0
60 .    rr F
61 .\}
62 .\"
63 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
65 .hy 0
66 .\"
67 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
68 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
69 .    \" fudge factors for nroff and troff
70 .if n \{\
71 .    ds #H 0
72 .    ds #V .8m
73 .    ds #F .3m
74 .    ds #[ \f1
75 .    ds #] \fP
76 .\}
77 .if t \{\
78 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
79 .    ds #V .6m
80 .    ds #F 0
81 .    ds #[ \&
82 .    ds #] \&
83 .\}
84 .    \" simple accents for nroff and troff
85 .if n \{\
86 .    ds ' \&
87 .    ds ` \&
88 .    ds ^ \&
89 .    ds , \&
90 .    ds ~ ~
91 .    ds /
92 .\}
93 .if t \{\
94 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
95 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
96 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
97 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
98 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
99 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
100 .\}
101 .    \" troff and (daisy-wheel) nroff accents
102 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
103 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
104 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
105 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
106 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
107 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
108 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
109 .ds ae a\h'-(\w'a'u*4/10)'e
110 .ds Ae A\h'-(\w'A'u*4/10)'E
111 .    \" corrections for vroff
112 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
113 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
114 .    \" for low resolution devices (crt and lpr)
115 .if \n(.H>23 .if \n(.V>19 \
116 \{\
117 .    ds : e
118 .    ds 8 ss
119 .    ds o a
120 .    ds d- d\h'-1'\(ga
121 .    ds D- D\h'-1'\(hy
122 .    ds th \o'bp'
123 .    ds Th \o'LP'
124 .    ds ae ae
125 .    ds Ae AE
126 .\}
127 .rm #[ #] #H #V #F C
128 .\" ========================================================================
129 .\"
130 .IX Title "ADDR2LINE 1"
131 .TH ADDR2LINE 1 "2006-06-23" "binutils-2.17" "GNU Development Tools"
132 .SH "NAME"
133 addr2line \- convert addresses into file names and line numbers.
134 .SH "SYNOPSIS"
135 .IX Header "SYNOPSIS"
136 addr2line [\fB\-b\fR \fIbfdname\fR|\fB\-\-target=\fR\fIbfdname\fR]
137           [\fB\-C\fR|\fB\-\-demangle\fR[=\fIstyle\fR]]
138           [\fB\-e\fR \fIfilename\fR|\fB\-\-exe=\fR\fIfilename\fR]
139           [\fB\-f\fR|\fB\-\-functions\fR] [\fB\-s\fR|\fB\-\-basename\fR]
140           [\fB\-i\fR|\fB\-\-inlines\fR]
141           [\fB\-j\fR|\fB\-\-section=\fR\fIname\fR]
142           [\fB\-H\fR|\fB\-\-help\fR] [\fB\-V\fR|\fB\-\-version\fR]
143           [addr addr ...]
144 .SH "DESCRIPTION"
145 .IX Header "DESCRIPTION"
146 \&\fBaddr2line\fR translates addresses into file names and line numbers.
147 Given an address in an executable or an offset in a section of a relocatable
148 object, it uses the debugging information to figure out which file name and
149 line number are associated with it.
150 .PP
151 The executable or relocatable object to use is specified with the \fB\-e\fR
152 option.  The default is the file \fIa.out\fR.  The section in the relocatable
153 object to use is specified with the \fB\-j\fR option.
154 .PP
155 \&\fBaddr2line\fR has two modes of operation.
156 .PP
157 In the first, hexadecimal addresses are specified on the command line,
158 and \fBaddr2line\fR displays the file name and line number for each
159 address.
160 .PP
161 In the second, \fBaddr2line\fR reads hexadecimal addresses from
162 standard input, and prints the file name and line number for each
163 address on standard output.  In this mode, \fBaddr2line\fR may be used
164 in a pipe to convert dynamically chosen addresses.
165 .PP
166 The format of the output is \fB\s-1FILENAME:LINENO\s0\fR.  The file name and
167 line number for each address is printed on a separate line.  If the
168 \&\fB\-f\fR option is used, then each \fB\s-1FILENAME:LINENO\s0\fR line is
169 preceded by a \fB\s-1FUNCTIONNAME\s0\fR line which is the name of the function
170 containing the address.
171 .PP
172 If the file name or function name can not be determined,
173 \&\fBaddr2line\fR will print two question marks in their place.  If the
174 line number can not be determined, \fBaddr2line\fR will print 0.
175 .SH "OPTIONS"
176 .IX Header "OPTIONS"
177 The long and short forms of options, shown here as alternatives, are
178 equivalent.
179 .IP "\fB\-b\fR \fIbfdname\fR" 4
180 .IX Item "-b bfdname"
181 .PD 0
182 .IP "\fB\-\-target=\fR\fIbfdname\fR" 4
183 .IX Item "--target=bfdname"
184 .PD
185 Specify that the object-code format for the object files is
186 \&\fIbfdname\fR.
187 .IP "\fB\-C\fR" 4
188 .IX Item "-C"
189 .PD 0
190 .IP "\fB\-\-demangle[=\fR\fIstyle\fR\fB]\fR" 4
191 .IX Item "--demangle[=style]"
192 .PD
193 Decode (\fIdemangle\fR) low-level symbol names into user-level names.
194 Besides removing any initial underscore prepended by the system, this
195 makes \*(C+ function names readable.  Different compilers have different
196 mangling styles. The optional demangling style argument can be used to 
197 choose an appropriate demangling style for your compiler. 
198 .IP "\fB\-e\fR \fIfilename\fR" 4
199 .IX Item "-e filename"
200 .PD 0
201 .IP "\fB\-\-exe=\fR\fIfilename\fR" 4
202 .IX Item "--exe=filename"
203 .PD
204 Specify the name of the executable for which addresses should be
205 translated.  The default file is \fIa.out\fR.
206 .IP "\fB\-f\fR" 4
207 .IX Item "-f"
208 .PD 0
209 .IP "\fB\-\-functions\fR" 4
210 .IX Item "--functions"
211 .PD
212 Display function names as well as file and line number information.
213 .IP "\fB\-s\fR" 4
214 .IX Item "-s"
215 .PD 0
216 .IP "\fB\-\-basenames\fR" 4
217 .IX Item "--basenames"
218 .PD
219 Display only the base of each file name.
220 .IP "\fB\-i\fR" 4
221 .IX Item "-i"
222 .PD 0
223 .IP "\fB\-\-inlines\fR" 4
224 .IX Item "--inlines"
225 .PD
226 If the address belongs to a function that was inlined, the source
227 information for all enclosing scopes back to the first non-inlined
228 function will also be printed.  For example, if \f(CW\*(C`main\*(C'\fR inlines
229 \&\f(CW\*(C`callee1\*(C'\fR which inlines \f(CW\*(C`callee2\*(C'\fR, and address is from
230 \&\f(CW\*(C`callee2\*(C'\fR, the source information for \f(CW\*(C`callee1\*(C'\fR and \f(CW\*(C`main\*(C'\fR
231 will also be printed.
232 .IP "\fB\-j\fR" 4
233 .IX Item "-j"
234 .PD 0
235 .IP "\fB\-\-section\fR" 4
236 .IX Item "--section"
237 .PD
238 Read offsets relative to the specified section instead of absolute addresses.
239 .IP "\fB@\fR\fIfile\fR" 4
240 .IX Item "@file"
241 Read command-line options from \fIfile\fR.  The options read are
242 inserted in place of the original @\fIfile\fR option.  If \fIfile\fR
243 does not exist, or cannot be read, then the option will be treated
244 literally, and not removed.  
245 .Sp
246 Options in \fIfile\fR are separated by whitespace.  A whitespace
247 character may be included in an option by surrounding the entire
248 option in either single or double quotes.  Any character (including a
249 backslash) may be included by prefixing the character to be included
250 with a backslash.  The \fIfile\fR may itself contain additional
251 @\fIfile\fR options; any such options will be processed recursively.
252 .SH "SEE ALSO"
253 .IX Header "SEE ALSO"
254 Info entries for \fIbinutils\fR.
255 .SH "COPYRIGHT"
256 .IX Header "COPYRIGHT"
257 Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
258 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
259 .PP
260 Permission is granted to copy, distribute and/or modify this document
261 under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
262 or any later version published by the Free Software Foundation;
263 with no Invariant Sections, with no Front-Cover Texts, and with no
264 Back-Cover Texts.  A copy of the license is included in the
265 section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".