[llvm-objcopy]Add support for *-freebsd output formats
authorJames Henderson <jh7370@my.bristol.ac.uk>
Fri, 22 Mar 2019 10:21:09 +0000 (10:21 +0000)
committerJames Henderson <jh7370@my.bristol.ac.uk>
Fri, 22 Mar 2019 10:21:09 +0000 (10:21 +0000)
commitc040d5de25f50887170e056dc854fe0a82e04640
tree794d816d0594f384afc95bbf1c2ccb4f42e302ab
parent4fdad7e30e20da67c472c2b4bd209615118333ed
[llvm-objcopy]Add support for *-freebsd output formats

GNU objcopy can support output formats like elf32-i386-freebsd and
elf64-x86-64-freebsd. The only difference from their regular non-freebsd
counterparts that I have observed is that the freebsd versions set the
OS/ABI field to ELFOSABI_FREEBSD. This patch sets the OS/ABI field
according based on the format whenever --output-format is specified.

Reviewed by: rupprecht, grimar

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

llvm-svn: 356737
llvm/test/tools/llvm-objcopy/ELF/binary-input-with-arch.test
llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test
llvm/tools/llvm-objcopy/CopyConfig.cpp
llvm/tools/llvm-objcopy/CopyConfig.h
llvm/tools/llvm-objcopy/ELF/ELFObjcopy.cpp