mirror of
https://github.com/llvm/llvm-project.git
synced 2025-04-25 11:56:08 +00:00

Currently the documentation on the command line options for llvm-link is quite sparse. This patch adds in the options that the tool understands that aren't currently present in the documentation. Reviewed By: tejohnson, MaskRay Differential Revision: https://reviews.llvm.org/D155904
110 lines
2.9 KiB
ReStructuredText
110 lines
2.9 KiB
ReStructuredText
llvm-link - LLVM bitcode linker
|
|
===============================
|
|
|
|
.. program:: llvm-link
|
|
|
|
SYNOPSIS
|
|
--------
|
|
|
|
:program:`llvm-link` [*options*] *filename ...*
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
|
|
:program:`llvm-link` takes several LLVM bitcode files and links them together
|
|
into a single LLVM bitcode file. It writes the output file to standard output,
|
|
unless the :option:`-o` option is used to specify a filename.
|
|
|
|
OPTIONS
|
|
-------
|
|
|
|
.. option:: -f
|
|
|
|
Enable binary output on terminals. Normally, :program:`llvm-link` will refuse
|
|
to write raw bitcode output if the output stream is a terminal. With this
|
|
option, :program:`llvm-link` will write raw bitcode regardless of the output
|
|
device.
|
|
|
|
.. option:: -o filename
|
|
|
|
Specify the output file name. If ``filename`` is "``-``", then
|
|
:program:`llvm-link` will write its output to standard output.
|
|
|
|
.. option:: -S
|
|
|
|
Write output in LLVM intermediate language (instead of bitcode).
|
|
|
|
.. option:: -d
|
|
|
|
If specified, :program:`llvm-link` prints a human-readable version of the
|
|
output bitcode file to standard error.
|
|
|
|
.. option:: --help
|
|
|
|
Print a summary of command line options.
|
|
|
|
.. option:: -v
|
|
|
|
Verbose mode. Print information about what :program:`llvm-link` is doing.
|
|
This typically includes a message for each bitcode file linked in and for each
|
|
library found.
|
|
|
|
.. option:: --override <filename>
|
|
|
|
Adds the passed-in file to the link and overrides symbols that have already
|
|
been declared with the definitions in the file that is passed in. This flag
|
|
can be specified multiple times to have multiple files act as overrides. If
|
|
a symbol is declared more than twice, the definition from the file declared
|
|
last takes precedence.
|
|
|
|
.. option:: --import <function:filename>
|
|
|
|
Specify a function that should be imported from the specified file for
|
|
linking with ThinLTO. This option can be specified multiple times to import
|
|
multiple functions.
|
|
|
|
.. option:: --summary-index <filename>
|
|
|
|
Specify the path to a file containing the module summary index with the
|
|
results of an earlier ThinLTO link. This option is required when
|
|
`--import` is used.
|
|
|
|
.. option:: --internalize
|
|
|
|
Internalize the linked symbols.
|
|
|
|
.. option:: --disable-debug-info-type-map
|
|
|
|
Disables the use of a uniquing type map for debug info.
|
|
|
|
.. option:: --only-needed
|
|
|
|
Link only needed symbols.
|
|
|
|
.. option:: --disable-lazy-loading
|
|
|
|
Disable lazy module loading.
|
|
|
|
.. option:: --suppress-warnings
|
|
|
|
Suppress all linker warnings.
|
|
|
|
.. option:: --preserve-bc-uselistorder
|
|
|
|
Preserve the use-list order when writing LLVM bitcode.
|
|
|
|
.. option:: --preserve-ll-uselistorder
|
|
|
|
Preserve the use-list order when writing LLVM assembly.
|
|
|
|
.. option:: --ignore-non-bitcode
|
|
|
|
Do not error out when a non-bitcode file is encountered while processing
|
|
an archive.
|
|
|
|
EXIT STATUS
|
|
-----------
|
|
|
|
If :program:`llvm-link` succeeds, it will exit with 0. Otherwise, if an error
|
|
occurs, it will exit with a non-zero value.
|