diff options
author | Dmitri Gribenko <gribozavr@gmail.com> | 2020-10-06 11:29:24 +0200 |
---|---|---|
committer | Dmitri Gribenko <gribozavr@gmail.com> | 2020-10-06 11:29:24 +0200 |
commit | 80f66ac0d544d2d9d3108033148d60bb4760b319 (patch) | |
tree | 13a127b42712af1895efa929f8a4ba6a5a4d790d /llvm/tools/llvm-objcopy/llvm-objcopy.cpp | |
parent | 8ed7946a7d94f9d23b7f33356a1903d481daa5a0 (diff) | |
download | llvm-80f66ac0d544d2d9d3108033148d60bb4760b319.zip llvm-80f66ac0d544d2d9d3108033148d60bb4760b319.tar.gz llvm-80f66ac0d544d2d9d3108033148d60bb4760b319.tar.bz2 |
Revert "[llvm-objcopy][MachO] Add support for universal binaries"
This reverts commit 32c8435ef70031d7bd3dce48e41bdce65747e123. It fails
ASan, details in https://reviews.llvm.org/D88400.
Diffstat (limited to 'llvm/tools/llvm-objcopy/llvm-objcopy.cpp')
-rw-r--r-- | llvm/tools/llvm-objcopy/llvm-objcopy.cpp | 26 |
1 files changed, 3 insertions, 23 deletions
diff --git a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp index 8cd5857..175f292 100644 --- a/llvm/tools/llvm-objcopy/llvm-objcopy.cpp +++ b/llvm/tools/llvm-objcopy/llvm-objcopy.cpp @@ -25,7 +25,6 @@ #include "llvm/Object/ELFTypes.h" #include "llvm/Object/Error.h" #include "llvm/Object/MachO.h" -#include "llvm/Object/MachOUniversal.h" #include "llvm/Object/Wasm.h" #include "llvm/Option/Arg.h" #include "llvm/Option/ArgList.h" @@ -145,10 +144,6 @@ static Error executeObjcopyOnBinary(CopyConfig &Config, object::Binary &In, return coff::executeObjcopyOnBinary(Config, *COFFBinary, Out); else if (auto *MachOBinary = dyn_cast<object::MachOObjectFile>(&In)) return macho::executeObjcopyOnBinary(Config, *MachOBinary, Out); - else if (auto *MachOUniversalBinary = - dyn_cast<object::MachOUniversalBinary>(&In)) - return macho::executeObjcopyOnMachOUniversalBinary( - Config, *MachOUniversalBinary, Out); else if (auto *WasmBinary = dyn_cast<object::WasmObjectFile>(&In)) return objcopy::wasm::executeObjcopyOnBinary(Config, *WasmBinary, Out); else @@ -156,11 +151,7 @@ static Error executeObjcopyOnBinary(CopyConfig &Config, object::Binary &In, "unsupported object file format"); } -namespace llvm { -namespace objcopy { - -Expected<std::vector<NewArchiveMember>> -createNewArchiveMembers(CopyConfig &Config, const Archive &Ar) { +static Error executeObjcopyOnArchive(CopyConfig &Config, const Archive &Ar) { std::vector<NewArchiveMember> NewArchiveMembers; Error Err = Error::success(); for (const Archive::Child &Child : Ar.children(Err)) { @@ -175,7 +166,7 @@ createNewArchiveMembers(CopyConfig &Config, const Archive &Ar) { MemBuffer MB(ChildNameOrErr.get()); if (Error E = executeObjcopyOnBinary(Config, *ChildOrErr->get(), MB)) - return std::move(E); + return E; Expected<NewArchiveMember> Member = NewArchiveMember::getOldMember(Child, Config.DeterministicArchives); @@ -187,19 +178,8 @@ createNewArchiveMembers(CopyConfig &Config, const Archive &Ar) { } if (Err) return createFileError(Config.InputFilename, std::move(Err)); - return NewArchiveMembers; -} - -} // end namespace objcopy -} // end namespace llvm -static Error executeObjcopyOnArchive(CopyConfig &Config, - const object::Archive &Ar) { - Expected<std::vector<NewArchiveMember>> NewArchiveMembersOrErr = - createNewArchiveMembers(Config, Ar); - if (!NewArchiveMembersOrErr) - return NewArchiveMembersOrErr.takeError(); - return deepWriteArchive(Config.OutputFilename, *NewArchiveMembersOrErr, + return deepWriteArchive(Config.OutputFilename, NewArchiveMembers, Ar.hasSymbolTable(), Ar.kind(), Config.DeterministicArchives, Ar.isThin()); } |