* dlltool.c (usage): Add file parameter. Change all callers.
[deliverable/binutils-gdb.git] / binutils / objdump.1
1 .\" Copyright (c) 1991, 1996, 1997 Free Software Foundation
2 .\" See section COPYING for conditions for redistribution
3 .TH objdump 1 "5 November 1991" "cygnus support" "GNU Development Tools"
4 .de BP
5 .sp
6 .ti \-.2i
7 \(**
8 ..
9
10 .SH NAME
11 objdump \- display information from object files.
12
13 .SH SYNOPSIS
14 .hy 0
15 .na
16 .TP
17 .B objdump
18 .RB "[\|" \-a | \-\-archive\-headers "\|]"
19 .RB "[\|" "\-b\ "\c
20 .I bfdname\c
21 .RB " | " "\-\-target="\c
22 .I bfdname\c
23 \&\|]
24 .RB "[\|" \-C | \-\-demangle "\|]"
25 .RB "[\|" \-\-debugging "\|]"
26 .RB "[\|" \-d | \-\-disassemble "\|]"
27 .RB "[\|" \-D | \-\-disassemble-all "\|]"
28 .RB "[\|" \-\-disassemble\-zeroes "\|]"
29 .RB "[\|" \-EB | \-EL | \-\-endian=\c
30 .I {big|little}\c
31 \&\|]
32 .RB "[\|" \-f | \-\-file\-headers "\|]"
33 .RB "[\|" \-h | \-\-section\-headers
34 .RB "| " \-\-headers "\|]"
35 .RB "[\|" \-i | \-\-info "\|]"
36 .RB "[\|" "\-j\ "\c
37 .I section\c
38 .RB " | " "\-\-section="\c
39 .I section\c
40 \&\|]
41 .RB "[\|" \-l | \-\-line\-numbers "\|]"
42 .RB "[\|" "\-m\ "\c
43 .I machine\c
44 .RB " | " "\-\-architecture="\c
45 .I machine\c
46 \&\|]
47 .RB "[\|" \-p | \-\-private\-headers "\|]"
48 .RB "[\|" \-\-prefix\-addresses "\|]"
49 .RB "[\|" \-r | \-\-reloc "\|]"
50 .RB "[\|" \-R | \-\-dynamic\-reloc "\|]"
51 .RB "[\|" \-s | \-\-full\-contents "\|]"
52 .RB "[\|" \-S | \-\-source "\|]"
53 .RB "[\|" \-\-[no\-]show\-raw\-insn "\|]"
54 .RB "[\|" \-\-stabs "\|]"
55 .RB "[\|" \-t | \-\-syms "\|]"
56 .RB "[\|" \-T | \-\-dynamic\-syms "\|]"
57 .RB "[\|" \-x | \-\-all\-headers "\|]"
58 .RB "[\|" "\-\-start\-address="\c
59 .I address\c
60 \&\|]
61 .RB "[\|" "\-\-stop\-address="\c
62 .I address\c
63 \&\|]
64 .RB "[\|" "\-\-adjust\-vma="\c
65 .I offset\c
66 \&\|]
67 .RB "[\|" \-\-version "\|]"
68 .RB "[\|" \-\-help "\|]"
69 .I objfile\c
70 \&.\|.\|.
71 .ad b
72 .hy 1
73 .SH DESCRIPTION
74 \c
75 .B objdump\c
76 \& displays information about one or more object files.
77 The options control what particular information to display. This
78 information is mostly useful to programmers who are working on the
79 compilation tools, as opposed to programmers who just want their
80 program to compile and work.
81 .PP
82 .IR "objfile" .\|.\|.
83 are the object files to be examined. When you specify archives,
84 \c
85 .B objdump\c
86 \& shows information on each of the member object files.
87
88 .SH OPTIONS
89 Where long and short forms of an option are shown together, they are
90 equivalent. At least one option besides
91 .B \-l
92 (\fB\-\-line\-numbers\fP) must be given.
93
94 .TP
95 .B \-a
96 .TP
97 .B \-\-archive\-headers
98 If any files from \c
99 .I objfile\c
100 \& are archives, display the archive
101 header information (in a format similar to `\|\c
102 .B ls \-l\c
103 \|'). Besides the
104 information you could list with `\|\c
105 .B ar tv\c
106 \|', `\|\c
107 .B objdump \-a\c
108 \|' shows
109 the object file format of each archive member.
110
111 .TP
112 .BI "\-\-adjust\-vma=" "offset"
113 When dumping information, first add
114 .I offset
115 to all the section addresses. This is useful if the section addresses
116 do not correspond to the symbol table, which can happen when putting
117 sections at particular addresses when using a format which can not
118 represent section addresses, such as a.out.
119
120 .TP
121 .BI "\-b " "bfdname"\c
122 .TP
123 .BI "\-\-target=" "bfdname"
124 Specify the object-code format for the object files to be
125 \c
126 .I bfdname\c
127 \&. This may not be necessary; \c
128 .I objdump\c
129 \& can
130 automatically recognize many formats. For example,
131 .sp
132 .br
133 objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
134 .br
135 .sp
136 display summary information from the section headers (`\|\c
137 .B \-h\c
138 \|') of
139 `\|\c
140 .B fu.o\c
141 \|', which is explicitly identified (`\|\c
142 .B \-m\c
143 \|') as a Vax object
144 file in the format produced by Oasys compilers. You can list the
145 formats available with the `\|\c
146 .B \-i\c
147 \|' option.
148
149 .TP
150 .B \-C
151 .TP
152 .B \-\-demangle
153 Decode (\fIdemangle\fP) low-level symbol names into user-level names.
154 Besides removing any initial underscore prepended by the system, this
155 makes C++ function names readable.
156
157 .TP
158 .B \-\-debugging
159 Display debugging information. This attempts to parse debugging
160 information stored in the file and print it out using a C like syntax.
161 Only certain types of debugging information have been implemented.
162
163 .TP
164 .B \-d
165 .TP
166 .B \-\-disassemble
167 Display the assembler mnemonics for the machine
168 instructions from \c
169 .I objfile\c
170 \&.
171 This option only disassembles those sections which are
172 expected to contain instructions.
173
174 .TP
175 .B \-D
176 .TP
177 .B \-\-disassemble-all
178 Like \fB\-d\fP, but disassemble the contents of all sections, not just
179 those expected to contain instructions.
180
181 .TP
182 .B \-\-prefix\-addresses
183 When disassembling, print the complete address on each line. This is
184 the older disassembly format.
185
186 .TP
187 .B \-\-disassemble\-zeroes
188 Normally the disassembly output will skip blocks of zeroes. This
189 option directs the disassembler to disassemble those blocks, just like
190 any other data.
191
192 .TP
193 .B \-EB
194 .TP
195 .B \-EL
196 .TP
197 .BI "\-\-endian=" "{big|little}"
198 Specify the endianness of the object files. This only affects
199 disassembly. This can be useful when disassembling a file format which
200 does not describe endianness information, such as S-records.
201
202 .TP
203 .B \-f
204 .TP
205 .B \-\-file\-headers
206 Display summary information from the overall header of
207 each file in \c
208 .I objfile\c
209 \&.
210
211 .TP
212 .B \-h
213 .TP
214 .B \-\-section\-headers
215 .TP
216 .B \-\-headers
217 Display summary information from the section headers of the
218 object file.
219
220 .TP
221 .B \-\-help
222 Print a summary of the options to
223 .B objdump
224 and exit.
225
226 .TP
227 .B \-i
228 .TP
229 .B \-\-info
230 Display a list showing all architectures and object formats available
231 for specification with \c
232 .B \-b\c
233 \& or \c
234 .B \-m\c
235 \&.
236
237 .TP
238 .BI "\-j " "name"\c
239 .TP
240 .BI "\-\-section=" "name"
241 Display information only for section \c
242 .I name\c
243 \&.
244
245 .TP
246 .B \-l
247 .TP
248 .B \-\-line\-numbers
249 Label the display (using debugging information) with the filename
250 and source line numbers corresponding to the object code shown.
251 Only useful with \fB\-d\fP, \fB\-D\fP, or \fB\-r\fP.
252
253 .TP
254 .BI "\-m " "machine"\c
255 .TP
256 .BI "\-\-architecture=" "machine"
257 Specify the architecture to use when disassembling object files. This
258 can be useful when disassembling object files which do not describe
259 architecture information, such as S-records. You can list the available
260 architectures with the \fB\-i\fP option.
261
262 .TP
263 .B \-p
264 .TP
265 .B \-\-private\-headers
266 Print information that is specific to the object file format. The
267 exact information printed depends upon the object file format. For
268 some object file formats, no additional information is printed.
269
270 .TP
271 .B \-r
272 .TP
273 .B \-\-reloc
274 Print the relocation entries of the file. If used with \fB\-d\fP or
275 \fB\-d\fP, the relocations are printed interspersed with the
276 disassembly.
277
278 .TP
279 .B \-R
280 .TP
281 .B \-\-dynamic\-reloc
282 Print the dynamic relocation entries of the file. This is only
283 meaningful for dynamic objects, such as certain types of shared
284 libraries.
285
286 .TP
287 .B \-s
288 .TP
289 .B \-\-full\-contents
290 Display the full contents of any sections requested.
291
292 .TP
293 .B \-S
294 .TP
295 .B \-\-source
296 Display source code intermixed with disassembly, if possible. Implies
297 \fB-d\fP.
298
299 .TP
300 .B \-\-show\-raw\-insn
301 When disassembling instructions, print the instruction in hex as well as
302 in symbolic form. This is the default except when
303 .B \-\-prefix\-addresses
304 is used.
305
306 .TP
307 .B \-\-no\-show\-raw\-insn
308 When disassembling instructions, do not print the instruction bytes.
309 This is the default when
310 .B \-\-prefix\-addresses
311 is used.
312
313 .TP
314 .B \-\-stabs
315 Display the contents of the .stab, .stab.index, and .stab.excl
316 sections from an ELF file. This is only useful on systems (such as
317 Solaris 2.0) in which .stab debugging symbol-table entries are carried
318 in an ELF section. In most other file formats, debugging symbol-table
319 entries are interleaved with linkage symbols, and are visible in the
320 \-\-syms output.
321
322 .TP
323 .BI "\-\-start\-address=" "address"
324 Start displaying data at the specified address. This affects the output
325 of the
326 .B \-d\c
327 ,
328 .B \-r
329 and
330 .B \-s
331 options.
332
333 .TP
334 .BI "\-\-stop\-address=" "address"
335 Stop displaying data at the specified address. This affects the output
336 of the
337 .B \-d\c
338 ,
339 .B \-r
340 and
341 .B \-s
342 options.
343
344 .TP
345 .B \-t
346 .TP
347 .B \-\-syms
348 Symbol Table. Print the symbol table entries of the file.
349 This is similar to the information provided by the `\|\c
350 .B nm\c
351 \|' program.
352
353 .TP
354 .B \-T
355 .TP
356 .B \-\-dynamic\-syms
357 Dynamic Symbol Table. Print the dynamic symbol table entries of the
358 file. This is only meaningful for dynamic objects, such as certain
359 types of shared libraries. This is similar to the information
360 provided by the `\|\c
361 .B nm\c
362 \|' program when given the
363 .B \-D (\-\-dynamic)
364 option.
365
366 .TP
367 .B \-\-version
368 Print the version number of
369 .B objdump
370 and exit.
371
372 .TP
373 .B \-x
374 .TP
375 .B \-\-all\-headers
376 Display all available header information, including the symbol table and
377 relocation entries. Using `\|\c
378 .B \-x\c
379 \|' is equivalent to specifying all of
380 `\|\c
381 .B \-a \-f \-h \-r \-t\c
382 \|'.
383
384 .SH "SEE ALSO"
385 .RB "`\|" binutils "\|'"
386 entry in
387 .B
388 info\c
389 \&;
390 .I
391 The GNU Binary Utilities\c
392 \&, Roland H. Pesch (October 1991);
393 .BR nm "(" 1 ")."
394
395 .SH COPYING
396 Copyright (c) 1991, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
397 .PP
398 Permission is granted to make and distribute verbatim copies of
399 this manual provided the copyright notice and this permission notice
400 are preserved on all copies.
401 .PP
402 Permission is granted to copy and distribute modified versions of this
403 manual under the conditions for verbatim copying, provided that the
404 entire resulting derived work is distributed under the terms of a
405 permission notice identical to this one.
406 .PP
407 Permission is granted to copy and distribute translations of this
408 manual into another language, under the above conditions for modified
409 versions, except that this permission notice may be included in
410 translations approved by the Free Software Foundation instead of in
411 the original English.
This page took 0.037042 seconds and 4 git commands to generate.