From: Rui Ueyama Date: Mon, 27 Apr 2015 16:54:48 +0000 (+0000) Subject: ELF: Simplify LinkerScript detection. NFC. X-Git-Tag: llvmorg-3.7.0-rc1~5926 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=de9215e49816cfafaef28d54b9c795dc221e03f2;p=platform%2Fupstream%2Fllvm.git ELF: Simplify LinkerScript detection. NFC. llvm-svn: 235895 --- diff --git a/lld/lib/Driver/GnuLdDriver.cpp b/lld/lib/Driver/GnuLdDriver.cpp index a5f5e69..ba87e9b 100644 --- a/lld/lib/Driver/GnuLdDriver.cpp +++ b/lld/lib/Driver/GnuLdDriver.cpp @@ -112,22 +112,6 @@ maybeExpandResponseFiles(int argc, const char **argv, BumpPtrAllocator &alloc) { return std::make_tuple(argc, copy); } -static std::error_code -getFileMagic(StringRef path, llvm::sys::fs::file_magic &magic) { - std::error_code ec = llvm::sys::fs::identify_magic(path, magic); - if (ec) - return ec; - switch (magic) { - case llvm::sys::fs::file_magic::archive: - case llvm::sys::fs::file_magic::elf_relocatable: - case llvm::sys::fs::file_magic::elf_shared_object: - case llvm::sys::fs::file_magic::unknown: - return std::error_code(); - default: - return make_dynamic_error_code("unknown type of object file"); - } -} - // Parses an argument of --defsym== static bool parseDefsymAsAbsolute(StringRef opt, StringRef &sym, uint64_t &addr) { @@ -214,9 +198,9 @@ getArchType(const llvm::Triple &triple, StringRef value) { static bool isLinkerScript(StringRef path, raw_ostream &diag) { llvm::sys::fs::file_magic magic = llvm::sys::fs::file_magic::unknown; - std::error_code ec = getFileMagic(path, magic); - if (ec) { - diag << "unknown input file format for file " << path << "\n"; + if (std::error_code ec = llvm::sys::fs::identify_magic(path, magic)) { + diag << "unknown input file format: " << path << ": " + << ec.message() << "\n"; return false; } return magic == llvm::sys::fs::file_magic::unknown;