]> granicus.if.org Git - llvm/commitdiff
[docs][llvm-objcopy] Add description of binary input/output to doc
authorJames Henderson <jh7370@my.bristol.ac.uk>
Mon, 8 Jul 2019 11:41:54 +0000 (11:41 +0000)
committerJames Henderson <jh7370@my.bristol.ac.uk>
Mon, 8 Jul 2019 11:41:54 +0000 (11:41 +0000)
We briefly referred to being able to specify --target=binary without
explaining what binary input/output meant. This change adds a section on
this.

Reviewed by: MaskRay, abrachet

Differential Revision: https://reviews.llvm.org/D64245

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365312 91177308-0d34-0410-b5e6-96231b3b80d8

docs/CommandGuide/llvm-objcopy.rst

index bccdccd24f2edec798a1e0f857e995c3723631ad..e113a82b6eea6780bc2c0583d35be398431d885d 100644 (file)
@@ -457,8 +457,23 @@ options. For GNU :program:`objcopy` compatibility, the values are all bfdnames.
 - `elf32-sparc`
 - `elf32-sparcel`
 
-Additionally, all targets except ``binary`` and ``ihex`` can have ``-freebsd``
-as a suffix.
+Additionally, all targets except `binary` and `ihex` can have `-freebsd` as a
+suffix.
+
+BINARY INPUT AND OUTPUT
+-----------------------
+
+If `binary` is used as the value for :option:`--input-target`, the input file
+will be embedded as a data section in an ELF relocatable object, with symbols
+``_binary_<file_name>_start``, ``_binary_<file_name>_end``, and
+``_binary_<file_name>_size`` representing the start, end and size of the data,
+where ``<file_name>`` is the path of the input file as specified on the command
+line with non-alphanumeric characters converted to ``_``.
+
+If `binary` is used as the value for :option:`--output-target`, the output file
+will be a raw binary file, containing the memory image of the input file.
+Symbols and relocation information will be discarded. The image will start at
+the address of the first loadable section in the output.
 
 EXIT STATUS
 -----------