Reland "[llvm][llvm-objcopy] Added support for outputting to binary in llvm-objcopy"
authorPetr Hosek <phosek@chromium.org>
Fri, 4 Aug 2017 03:17:37 +0000 (03:17 +0000)
committerPetr Hosek <phosek@chromium.org>
Fri, 4 Aug 2017 03:17:37 +0000 (03:17 +0000)
commit10fbc733d09d4ac2f159f78c4a31c0ab8e394c50
treec143d703292969d5aa3792d3bcf8ee865b488510
parent83214dfb01d45aa57e3cb0b1a9314e0e3d83e281
Reland "[llvm][llvm-objcopy] Added support for outputting to binary in llvm-objcopy"

This change adds the "-O binary" flag which directs llvm-objcopy to
output the object file to the same format as GNU objcopy does when given
the flag "-O binary". This was done by splitting the Object class into
two subclasses ObjectELF and ObjectBianry which each output a different
format but relay on the same code to read in the Object in Object.

Patch by Jake Ehrlich

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

llvm-svn: 310018
llvm/test/tools/llvm-objcopy/basic-align-copy.test [new file with mode: 0644]
llvm/test/tools/llvm-objcopy/basic-binary-copy.test [new file with mode: 0644]
llvm/tools/llvm-objcopy/LLVMBuild.txt
llvm/tools/llvm-objcopy/Object.cpp
llvm/tools/llvm-objcopy/Object.h
llvm/tools/llvm-objcopy/llvm-objcopy.cpp