aboutsummaryrefslogtreecommitdiff
path: root/binutils/doc/binutils.texi
diff options
context:
space:
mode:
Diffstat (limited to 'binutils/doc/binutils.texi')
-rw-r--r--binutils/doc/binutils.texi68
1 files changed, 57 insertions, 11 deletions
diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi
index 9c0c7de..4543341 100644
--- a/binutils/doc/binutils.texi
+++ b/binutils/doc/binutils.texi
@@ -879,7 +879,7 @@ symbol is defined anywhere, the common symbols are treated as undefined
references.
@ifclear man
For more details on common symbols, see the discussion of
---warn-common in @ref{Options,,Linker options,ld.info,The GNU linker}.
+--warn-common in @ref{Options,,Linker options,ld,The GNU linker}.
@end ifclear
The lower case @var{c} character is used when the symbol is in a
special section for small commons.
@@ -1362,7 +1362,7 @@ between any two formats may not work as expected.
deletes them afterward. @command{objcopy} uses @sc{bfd} to do all its
translation work; it has access to all the formats described in @sc{bfd}
and thus is able to recognize most formats without being told
-explicitly. @xref{BFD,,BFD,ld.info,Using LD}.
+explicitly. @xref{BFD,,BFD,ld,Using LD}.
@command{objcopy} can be used to generate S-records by using an output
target of @samp{srec} (e.g., use @samp{-O srec}).
@@ -2146,9 +2146,6 @@ Sets the section alignment field in the PE header - if one is present
in the binary. Sections in memory will always begin at addresses
which are a multiple of this number. Defaults to 0x1000.
-Note - this option will also set the alignment field in each section's
-flags.
-
Note - if a section's LMA or VMA addresses are no longer aligned, and
those addresses have not been set via the @option{--set-section-lma} or
@option{--set-section-vma} options, and the file has been fully
@@ -2432,11 +2429,11 @@ with ctags tool.
Display the assembler mnemonics for the machine instructions from the
input file. This option only disassembles those sections which are
expected to contain instructions. If the optional @var{symbol}
-argument is given, then display the assembler mnemonics starting at
-@var{symbol}. If @var{symbol} is a function name then disassembly
-will stop at the end of the function, otherwise it will stop when the
-next symbol is encountered. If there are no matches for @var{symbol}
-then nothing will be displayed.
+argument is given (perhaps multiple times), then display the assembler
+mnemonics starting at (all the) @var{symbol}. If @var{symbol} is a
+function name then disassembly will stop at the end of the function,
+otherwise it will stop when the next symbol is encountered. If there
+are no matches for any @var{symbol} then nothing will be displayed.
Note if the @option{--dwarf=follow-links} option is enabled
then any symbol tables in linked debug info files will be read in and
@@ -2701,6 +2698,31 @@ If you disassemble without giving a CPU selection, a default will be
chosen from information gleaned by BFD from the object files headers,
but the result again may not be as you expect.
+For RISC-V, the following options are supported:
+
+@table @code
+@item max
+Disassemble without checking architecture string. This is a best effort mode, so
+for overlapping ISA extensions the first match (possibly incorrect in a given
+context) will be used to decode the instruction. It's useful, if the ELF file
+doesn't expose ISA string, preventing automatic ISA subset deduction, and the
+default fallback ISA string (@code{rv64gc}) doesn't cover all instructions in
+the binary.
+
+@item numeric
+Print numeric register names, rather than ABI names (e.g., print @code{x2}
+instead of @code{sp}).
+
+@item no-aliases
+Disassemble only into canonical instructions. For example, compressed
+instructions will be represented as such (@code{addi sp,sp,-128} will be
+@code{c.addi16sp sp,-128}).
+
+@item priv-spec=@var{SPEC}
+Print the CSR according to the chosen privilege spec version (e.g.,
+@code{1.10}, @code{1.11}, @code{1.12}, @code{1.13}).
+@end table
+
For MIPS, this option controls the printing of instruction mnemonic
names and register names in disassembled instructions. Multiple
selections from the following may be specified as a comma separated
@@ -2817,6 +2839,9 @@ libraries. As for @option{-r}, if used with @option{-d} or
@option{-D}, the relocations are printed interspersed with the
disassembly.
+Note: @command{objdump} does not support displaying RELR type
+relocations. These can be displayed by the @command{readelf} program.
+
@item -s
@itemx --full-contents
@cindex sections, full contents
@@ -2886,7 +2911,7 @@ after it has previously been enabled then use
@item --disassembler-color=off
@itemx --disassembler-color=terminal
@itemx --disassembler-color=on|color|colour
-@itemx --disassembler-color=extened|extended-color|extened-colour
+@itemx --disassembler-color=extended|extended-color|extended-colour
Enables or disables the use of colored syntax highlighting in
disassembly output. The default behaviour is determined via a
configure time option. Note, not all architectures support colored
@@ -3541,6 +3566,7 @@ strip [@option{-F} @var{bfdname} |@option{--target=}@var{bfdname}]
[@option{--keep-section-symbols}]
[@option{--keep-file-symbols}]
[@option{--only-keep-debug}]
+ [@option{--plugin} @var{name}]
[@option{-v} |@option{--verbose}] [@option{-V}|@option{--version}]
[@option{--help}] [@option{--info}]
@var{objfile}@dots{}
@@ -3800,6 +3826,26 @@ currently only supports the presence of one filename containing
debugging information, not multiple filenames on a one-per-object-file
basis.
+@item --plugin @var{name}
+@cindex plugins
+Load the plugin called @var{name} to add support for extra target
+types. This option is only available if the toolchain has been built
+with plugin support enabled.
+
+If @option{--plugin} is not provided, but plugin support has been
+enabled then @command{strip} iterates over the files in
+@file{$@{libdir@}/bfd-plugins} in alphabetic order and the first
+plugin that claims the object in question is used.
+
+Please note that this plugin search directory is @emph{not} the one
+used by @command{ld}'s @option{-plugin} option. In order to make
+@command{strip} use the linker plugin it must be copied into the
+@file{$@{libdir@}/bfd-plugins} directory. For GCC based compilations
+the linker plugin is called @file{liblto_plugin.so.0.0.0}. For Clang
+based compilations it is called @file{LLVMgold.so}. The GCC plugin
+is always backwards compatible with earlier versions, so it is
+sufficient to just copy the newest one.
+
@item -V
@itemx --version
Show the version number for @command{strip}.