summaryrefslogtreecommitdiffstats
path: root/llvm/docs/CommandGuide/llvm-objcopy.rst
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2019-09-14 01:36:31 +0000
committerFangrui Song <maskray@google.com>2019-09-14 01:36:31 +0000
commit2f519d7072bf48a81985fadc2dc145296d612223 (patch)
tree8d0ca4b9f00f4d5b80e4023592951eeb3da84d39 /llvm/docs/CommandGuide/llvm-objcopy.rst
parentba53030dd0938902dd858f7eac45732295e74120 (diff)
downloadbcm5719-llvm-2f519d7072bf48a81985fadc2dc145296d612223.tar.gz
bcm5719-llvm-2f519d7072bf48a81985fadc2dc145296d612223.zip
[llvm-objcopy] Ignore -B --binary-architecture=
GNU objcopy documents that -B is only useful with architecture-less input (i.e. "binary" or "ihex"). After D67144, -O defaults to -I, and -B is essentially a NOP. * If -O is binary/ihex, GNU objcopy ignores -B. * If -O is elf*, -B provides the e_machine field in GNU objcopy. So to convert a blob to an ELF, `-I binary -B i386:x86-64 -O elf64-x86-64` has to be specified. `-I binary -B i386:x86-64 -O elf64-x86-64` creates an ELF with its e_machine field set to EM_NONE in GNU objcopy, but a regular x86_64 ELF in elftoolchain elfcopy. Follow the elftoolchain approach (ignoring -B) to simplify code. Users that expect their command line portable should specify -B. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D67215 llvm-svn: 371914
Diffstat (limited to 'llvm/docs/CommandGuide/llvm-objcopy.rst')
-rw-r--r--llvm/docs/CommandGuide/llvm-objcopy.rst21
1 files changed, 4 insertions, 17 deletions
diff --git a/llvm/docs/CommandGuide/llvm-objcopy.rst b/llvm/docs/CommandGuide/llvm-objcopy.rst
index 401bc5bd4bd..f3926805c44 100644
--- a/llvm/docs/CommandGuide/llvm-objcopy.rst
+++ b/llvm/docs/CommandGuide/llvm-objcopy.rst
@@ -43,6 +43,10 @@ multiple file formats.
starts with ".note". Otherwise, it will have type `SHT_PROGBITS`. Can be
specified multiple times to add multiple sections.
+.. option:: --binary-architecture <arch>, -B
+
+ Ignored for compatibility.
+
.. option:: --disable-deterministic-archives, -U
Use real values for UIDs, GIDs and timestamps when updating archive member
@@ -181,23 +185,6 @@ them.
Allow llvm-objcopy to remove sections even if it would leave invalid section
references. Any invalid sh_link fields will be set to zero.
-.. option:: --binary-architecture <arch>, -B
-
- Specify the architecture to use, when transforming an architecture-less format
- (e.g. binary) to another format. Valid options are:
-
- - `aarch64`
- - `arm`
- - `i386`
- - `i386:x86-64`
- - `mips`
- - `powerpc:common64`
- - `riscv:rv32`
- - `riscv:rv64`
- - `sparc`
- - `sparcel`
- - `x86-64`
-
.. option:: --build-id-link-dir <dir>
Set the directory used by :option:`--build-id-link-input` and
OpenPOWER on IntegriCloud