mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 10:35:12 +08:00
413 lines
9.4 KiB
Groff
413 lines
9.4 KiB
Groff
.\" Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 1998 Free Software Foundation
|
|
.\" See section COPYING for conditions for redistribution
|
|
.TH objdump 1 "5 November 1991" "cygnus support" "GNU Development Tools"
|
|
.de BP
|
|
.sp
|
|
.ti \-.2i
|
|
\(**
|
|
..
|
|
|
|
.SH NAME
|
|
objdump \- display information from object files.
|
|
|
|
.SH SYNOPSIS
|
|
.hy 0
|
|
.na
|
|
.TP
|
|
.B objdump
|
|
.RB "[\|" \-a | \-\-archive\-headers "\|]"
|
|
.RB "[\|" "\-b\ "\c
|
|
.I bfdname\c
|
|
.RB " | " "\-\-target="\c
|
|
.I bfdname\c
|
|
\&\|]
|
|
.RB "[\|" \-C | \-\-demangle "\|]"
|
|
.RB "[\|" \-\-debugging "\|]"
|
|
.RB "[\|" \-d | \-\-disassemble "\|]"
|
|
.RB "[\|" \-D | \-\-disassemble-all "\|]"
|
|
.RB "[\|" \-\-disassemble\-zeroes "\|]"
|
|
.RB "[\|" \-EB | \-EL | \-\-endian=\c
|
|
.I {big|little}\c
|
|
\&\|]
|
|
.RB "[\|" \-f | \-\-file\-headers "\|]"
|
|
.RB "[\|" \-h | \-\-section\-headers
|
|
.RB "| " \-\-headers "\|]"
|
|
.RB "[\|" \-i | \-\-info "\|]"
|
|
.RB "[\|" "\-j\ "\c
|
|
.I section\c
|
|
.RB " | " "\-\-section="\c
|
|
.I section\c
|
|
\&\|]
|
|
.RB "[\|" \-l | \-\-line\-numbers "\|]"
|
|
.RB "[\|" "\-m\ "\c
|
|
.I machine\c
|
|
.RB " | " "\-\-architecture="\c
|
|
.I machine\c
|
|
\&\|]
|
|
.RB "[\|" \-p | \-\-private\-headers "\|]"
|
|
.RB "[\|" \-\-prefix\-addresses "\|]"
|
|
.RB "[\|" \-r | \-\-reloc "\|]"
|
|
.RB "[\|" \-R | \-\-dynamic\-reloc "\|]"
|
|
.RB "[\|" \-s | \-\-full\-contents "\|]"
|
|
.RB "[\|" \-S | \-\-source "\|]"
|
|
.RB "[\|" \-\-[no\-]show\-raw\-insn "\|]"
|
|
.RB "[\|" \-\-stabs "\|]"
|
|
.RB "[\|" \-t | \-\-syms "\|]"
|
|
.RB "[\|" \-T | \-\-dynamic\-syms "\|]"
|
|
.RB "[\|" \-x | \-\-all\-headers "\|]"
|
|
.RB "[\|" "\-\-start\-address="\c
|
|
.I address\c
|
|
\&\|]
|
|
.RB "[\|" "\-\-stop\-address="\c
|
|
.I address\c
|
|
\&\|]
|
|
.RB "[\|" "\-\-adjust\-vma="\c
|
|
.I offset\c
|
|
\&\|]
|
|
.RB "[\|" \-\-version "\|]"
|
|
.RB "[\|" \-\-help "\|]"
|
|
.I objfile\c
|
|
\&.\|.\|.
|
|
.ad b
|
|
.hy 1
|
|
.SH DESCRIPTION
|
|
\c
|
|
.B objdump\c
|
|
\& displays information about one or more object files.
|
|
The options control what particular information to display. This
|
|
information is mostly useful to programmers who are working on the
|
|
compilation tools, as opposed to programmers who just want their
|
|
program to compile and work.
|
|
.PP
|
|
.IR "objfile" .\|.\|.
|
|
are the object files to be examined. When you specify archives,
|
|
\c
|
|
.B objdump\c
|
|
\& shows information on each of the member object files.
|
|
|
|
.SH OPTIONS
|
|
Where long and short forms of an option are shown together, they are
|
|
equivalent. At least one option besides
|
|
.B \-l
|
|
(\fB\-\-line\-numbers\fP) must be given.
|
|
|
|
.TP
|
|
.B \-a
|
|
.TP
|
|
.B \-\-archive\-headers
|
|
If any files from \c
|
|
.I objfile\c
|
|
\& are archives, display the archive
|
|
header information (in a format similar to `\|\c
|
|
.B ls \-l\c
|
|
\|'). Besides the
|
|
information you could list with `\|\c
|
|
.B ar tv\c
|
|
\|', `\|\c
|
|
.B objdump \-a\c
|
|
\|' shows
|
|
the object file format of each archive member.
|
|
|
|
.TP
|
|
.BI "\-\-adjust\-vma=" "offset"
|
|
When dumping information, first add
|
|
.I offset
|
|
to all the section addresses. This is useful if the section addresses
|
|
do not correspond to the symbol table, which can happen when putting
|
|
sections at particular addresses when using a format which can not
|
|
represent section addresses, such as a.out.
|
|
|
|
.TP
|
|
.BI "\-b " "bfdname"\c
|
|
.TP
|
|
.BI "\-\-target=" "bfdname"
|
|
Specify the object-code format for the object files to be
|
|
\c
|
|
.I bfdname\c
|
|
\&. This may not be necessary; \c
|
|
.I objdump\c
|
|
\& can
|
|
automatically recognize many formats. For example,
|
|
.sp
|
|
.br
|
|
objdump\ \-b\ oasys\ \-m\ vax\ \-h\ fu.o
|
|
.br
|
|
.sp
|
|
display summary information from the section headers (`\|\c
|
|
.B \-h\c
|
|
\|') of
|
|
`\|\c
|
|
.B fu.o\c
|
|
\|', which is explicitly identified (`\|\c
|
|
.B \-m\c
|
|
\|') as a Vax object
|
|
file in the format produced by Oasys compilers. You can list the
|
|
formats available with the `\|\c
|
|
.B \-i\c
|
|
\|' option.
|
|
|
|
.TP
|
|
.B \-C
|
|
.TP
|
|
.B \-\-demangle
|
|
Decode (\fIdemangle\fP) low-level symbol names into user-level names.
|
|
Besides removing any initial underscore prepended by the system, this
|
|
makes C++ function names readable.
|
|
|
|
.TP
|
|
.B \-\-debugging
|
|
Display debugging information. This attempts to parse debugging
|
|
information stored in the file and print it out using a C like syntax.
|
|
Only certain types of debugging information have been implemented.
|
|
|
|
.TP
|
|
.B \-d
|
|
.TP
|
|
.B \-\-disassemble
|
|
Display the assembler mnemonics for the machine
|
|
instructions from \c
|
|
.I objfile\c
|
|
\&.
|
|
This option only disassembles those sections which are
|
|
expected to contain instructions.
|
|
|
|
.TP
|
|
.B \-D
|
|
.TP
|
|
.B \-\-disassemble-all
|
|
Like \fB\-d\fP, but disassemble the contents of all sections, not just
|
|
those expected to contain instructions.
|
|
|
|
.TP
|
|
.B \-\-prefix\-addresses
|
|
When disassembling, print the complete address on each line. This is
|
|
the older disassembly format.
|
|
|
|
.TP
|
|
.B \-\-disassemble\-zeroes
|
|
Normally the disassembly output will skip blocks of zeroes. This
|
|
option directs the disassembler to disassemble those blocks, just like
|
|
any other data.
|
|
|
|
.TP
|
|
.B \-EB
|
|
.TP
|
|
.B \-EL
|
|
.TP
|
|
.BI "\-\-endian=" "{big|little}"
|
|
Specify the endianness of the object files. This only affects
|
|
disassembly. This can be useful when disassembling a file format which
|
|
does not describe endianness information, such as S-records.
|
|
|
|
.TP
|
|
.B \-f
|
|
.TP
|
|
.B \-\-file\-headers
|
|
Display summary information from the overall header of
|
|
each file in \c
|
|
.I objfile\c
|
|
\&.
|
|
|
|
.TP
|
|
.B \-h
|
|
.TP
|
|
.B \-\-section\-headers
|
|
.TP
|
|
.B \-\-headers
|
|
Display summary information from the section headers of the
|
|
object file.
|
|
|
|
.TP
|
|
.B \-\-help
|
|
Print a summary of the options to
|
|
.B objdump
|
|
and exit.
|
|
|
|
.TP
|
|
.B \-i
|
|
.TP
|
|
.B \-\-info
|
|
Display a list showing all architectures and object formats available
|
|
for specification with \c
|
|
.B \-b\c
|
|
\& or \c
|
|
.B \-m\c
|
|
\&.
|
|
|
|
.TP
|
|
.BI "\-j " "name"\c
|
|
.TP
|
|
.BI "\-\-section=" "name"
|
|
Display information only for section \c
|
|
.I name\c
|
|
\&.
|
|
|
|
.TP
|
|
.B \-l
|
|
.TP
|
|
.B \-\-line\-numbers
|
|
Label the display (using debugging information) with the filename
|
|
and source line numbers corresponding to the object code shown.
|
|
Only useful with \fB\-d\fP, \fB\-D\fP, or \fB\-r\fP.
|
|
|
|
.TP
|
|
.BI "\-m " "machine"\c
|
|
.TP
|
|
.BI "\-\-architecture=" "machine"
|
|
Specify the architecture to use when disassembling object files. This
|
|
can be useful when disassembling object files which do not describe
|
|
architecture information, such as S-records. You can list the available
|
|
architectures with the \fB\-i\fP option.
|
|
|
|
.TP
|
|
.B \-p
|
|
.TP
|
|
.B \-\-private\-headers
|
|
Print information that is specific to the object file format. The
|
|
exact information printed depends upon the object file format. For
|
|
some object file formats, no additional information is printed.
|
|
|
|
.TP
|
|
.B \-r
|
|
.TP
|
|
.B \-\-reloc
|
|
Print the relocation entries of the file. If used with \fB\-d\fP or
|
|
\fB\-D\fP, the relocations are printed interspersed with the
|
|
disassembly.
|
|
|
|
.TP
|
|
.B \-R
|
|
.TP
|
|
.B \-\-dynamic\-reloc
|
|
Print the dynamic relocation entries of the file. This is only
|
|
meaningful for dynamic objects, such as certain types of shared
|
|
libraries.
|
|
|
|
.TP
|
|
.B \-s
|
|
.TP
|
|
.B \-\-full\-contents
|
|
Display the full contents of any sections requested.
|
|
|
|
.TP
|
|
.B \-S
|
|
.TP
|
|
.B \-\-source
|
|
Display source code intermixed with disassembly, if possible. Implies
|
|
\fB-d\fP.
|
|
|
|
.TP
|
|
.B \-\-show\-raw\-insn
|
|
When disassembling instructions, print the instruction in hex as well as
|
|
in symbolic form. This is the default except when
|
|
.B \-\-prefix\-addresses
|
|
is used.
|
|
|
|
.TP
|
|
.B \-\-no\-show\-raw\-insn
|
|
When disassembling instructions, do not print the instruction bytes.
|
|
This is the default when
|
|
.B \-\-prefix\-addresses
|
|
is used.
|
|
|
|
.TP
|
|
.B \-\-stabs
|
|
Display the contents of the .stab, .stab.index, and .stab.excl
|
|
sections from an ELF file. This is only useful on systems (such as
|
|
Solaris 2.0) in which .stab debugging symbol-table entries are carried
|
|
in an ELF section. In most other file formats, debugging symbol-table
|
|
entries are interleaved with linkage symbols, and are visible in the
|
|
.B \-\-syms
|
|
output.
|
|
|
|
.TP
|
|
.BI "\-\-start\-address=" "address"
|
|
Start displaying data at the specified address. This affects the output
|
|
of the
|
|
.B \-d\c
|
|
,
|
|
.B \-r
|
|
and
|
|
.B \-s
|
|
options.
|
|
|
|
.TP
|
|
.BI "\-\-stop\-address=" "address"
|
|
Stop displaying data at the specified address. This affects the output
|
|
of the
|
|
.B \-d\c
|
|
,
|
|
.B \-r
|
|
and
|
|
.B \-s
|
|
options.
|
|
|
|
.TP
|
|
.B \-t
|
|
.TP
|
|
.B \-\-syms
|
|
Symbol Table. Print the symbol table entries of the file.
|
|
This is similar to the information provided by the `\|\c
|
|
.B nm\c
|
|
\|' program.
|
|
|
|
.TP
|
|
.B \-T
|
|
.TP
|
|
.B \-\-dynamic\-syms
|
|
Dynamic Symbol Table. Print the dynamic symbol table entries of the
|
|
file. This is only meaningful for dynamic objects, such as certain
|
|
types of shared libraries. This is similar to the information
|
|
provided by the `\|\c
|
|
.B nm\c
|
|
\|' program when given the
|
|
.B \-D (\-\-dynamic)
|
|
option.
|
|
|
|
.TP
|
|
.B \-\-version
|
|
Print the version number of
|
|
.B objdump
|
|
and exit.
|
|
|
|
.TP
|
|
.B \-x
|
|
.TP
|
|
.B \-\-all\-headers
|
|
Display all available header information, including the symbol table and
|
|
relocation entries. Using `\|\c
|
|
.B \-x\c
|
|
\|' is equivalent to specifying all of
|
|
`\|\c
|
|
.B \-a \-f \-h \-r \-t\c
|
|
\|'.
|
|
|
|
.SH "SEE ALSO"
|
|
.RB "`\|" binutils "\|'"
|
|
entry in
|
|
.B
|
|
info\c
|
|
\&;
|
|
.I
|
|
The GNU Binary Utilities\c
|
|
\&, Roland H. Pesch (October 1991);
|
|
.BR nm "(" 1 ")."
|
|
|
|
.SH COPYING
|
|
Copyright (c) 1991, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
|
|
.PP
|
|
Permission is granted to make and distribute verbatim copies of
|
|
this manual provided the copyright notice and this permission notice
|
|
are preserved on all copies.
|
|
.PP
|
|
Permission is granted to copy and distribute modified versions of this
|
|
manual under the conditions for verbatim copying, provided that the
|
|
entire resulting derived work is distributed under the terms of a
|
|
permission notice identical to this one.
|
|
.PP
|
|
Permission is granted to copy and distribute translations of this
|
|
manual into another language, under the above conditions for modified
|
|
versions, except that this permission notice may be included in
|
|
translations approved by the Free Software Foundation instead of in
|
|
the original English.
|