OSDN Git Service

Revert "Reland "[llvm-objcopy] Refactor llvm-objcopy to use reader and writer objects""
authorJake Ehrlich <jakehehrlich@google.com>
Fri, 26 Jan 2018 00:38:30 +0000 (00:38 +0000)
committerJake Ehrlich <jakehehrlich@google.com>
Fri, 26 Jan 2018 00:38:30 +0000 (00:38 +0000)
Tests were working on my system because the old correct files were left over
and the new bug was that the output files were not being output at all.
Consequently the test work on my system but fail on any other system.

This reverts commit r323484.

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

tools/llvm-objcopy/Object.cpp
tools/llvm-objcopy/Object.h

index ec65e1e..c7b4c1f 100644 (file)
@@ -693,37 +693,37 @@ ELFReader::ELFReader(StringRef File) {
   auto BinaryOrErr = createBinary(File);
   if (!BinaryOrErr)
     reportError(File, BinaryOrErr.takeError());
-  auto TmpBin = std::move(BinaryOrErr.get());
-  std::tie(Bin, Data) = TmpBin.takeBinary();
+  auto Bin = std::move(BinaryOrErr.get());
+  std::tie(Binary, Data) = Bin.takeBinary();
 }
 
 ElfType ELFReader::getElfType() const {
-  if (isa<ELFObjectFile<ELF32LE>>(Bin.get()))
+  if (auto *o = dyn_cast<ELFObjectFile<ELF32LE>>(Binary.get()))
     return ELFT_ELF32LE;
-  if (isa<ELFObjectFile<ELF64LE>>(Bin.get()))
+  if (auto *o = dyn_cast<ELFObjectFile<ELF64LE>>(Binary.get()))
     return ELFT_ELF64LE;
-  if (isa<ELFObjectFile<ELF32BE>>(Bin.get()))
+  if (auto *o = dyn_cast<ELFObjectFile<ELF32BE>>(Binary.get()))
     return ELFT_ELF32BE;
-  if (isa<ELFObjectFile<ELF64BE>>(Bin.get()))
+  if (auto *o = dyn_cast<ELFObjectFile<ELF64BE>>(Binary.get()))
     return ELFT_ELF64BE;
   llvm_unreachable("Invalid ELFType");
 }
 
 std::unique_ptr<Object> ELFReader::create() const {
   auto Obj = llvm::make_unique<Object>(Data);
-  if (auto *o = dyn_cast<ELFObjectFile<ELF32LE>>(Bin.get())) {
+  if (auto *o = dyn_cast<ELFObjectFile<ELF32LE>>(Binary.get())) {
     ELFBuilder<ELF32LE> Builder(*o, *Obj);
     Builder.build();
     return Obj;
-  } else if (auto *o = dyn_cast<ELFObjectFile<ELF64LE>>(Bin.get())) {
+  } else if (auto *o = dyn_cast<ELFObjectFile<ELF64LE>>(Binary.get())) {
     ELFBuilder<ELF64LE> Builder(*o, *Obj);
     Builder.build();
     return Obj;
-  } else if (auto *o = dyn_cast<ELFObjectFile<ELF32BE>>(Bin.get())) {
+  } else if (auto *o = dyn_cast<ELFObjectFile<ELF32BE>>(Binary.get())) {
     ELFBuilder<ELF32BE> Builder(*o, *Obj);
     Builder.build();
     return Obj;
-  } else if (auto *o = dyn_cast<ELFObjectFile<ELF64BE>>(Bin.get())) {
+  } else if (auto *o = dyn_cast<ELFObjectFile<ELF64BE>>(Binary.get())) {
     ELFBuilder<ELF64BE> Builder(*o, *Obj);
     Builder.build();
     return Obj;
index 05f7480..2c7b572 100644 (file)
@@ -530,7 +530,7 @@ public:
 
 class ELFReader : public Reader {
 private:
-  std::unique_ptr<Binary> Bin;
+  std::unique_ptr<Binary> Binary;
   std::shared_ptr<MemoryBuffer> Data;
 
 public: