Reland "[LLVM][llvm-objcopy] Added basic plumbing to get things started"
authorPetr Hosek <phosek@chromium.org>
Tue, 25 Jul 2017 21:16:33 +0000 (21:16 +0000)
committerPetr Hosek <phosek@chromium.org>
Tue, 25 Jul 2017 21:16:33 +0000 (21:16 +0000)
commit4e0a4b3674834d68e794cbf32d5bc2481fc11d85
tree06ccce1cf887ef3cfb2e7a0078cee75c8819e2a3
parentd452126cb333cbd6b289b01d9bc9a48b111ffe9a
Reland "[LLVM][llvm-objcopy] Added basic plumbing to get things started"

As discussed on llvm-dev I've implemented the first basic steps towards
llvm-objcopy/llvm-objtool (name pending).

This change adds the ability to copy (without modification) 64-bit
little endian ELF executables that have SHT_PROGBITS, SHT_NOBITS,
SHT_NULL and SHT_STRTAB sections.

Patch by Jake Ehrlich

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

llvm-svn: 309032
llvm/test/CMakeLists.txt
llvm/test/tools/llvm-objcopy/basic-copy.test [new file with mode: 0644]
llvm/test/tools/llvm-objcopy/empty-section.test [new file with mode: 0644]
llvm/test/tools/llvm-objcopy/program-headers.test [new file with mode: 0644]
llvm/tools/LLVMBuild.txt
llvm/tools/llvm-objcopy/CMakeLists.txt [new file with mode: 0644]
llvm/tools/llvm-objcopy/LLVMBuild.txt [new file with mode: 0644]
llvm/tools/llvm-objcopy/Object.cpp [new file with mode: 0644]
llvm/tools/llvm-objcopy/Object.h [new file with mode: 0644]
llvm/tools/llvm-objcopy/llvm-objcopy.cpp [new file with mode: 0644]
llvm/tools/llvm-objcopy/llvm-objcopy.h [new file with mode: 0644]