summaryrefslogtreecommitdiff
path: root/tools/llvm-nm
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-01-22 16:04:52 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-01-22 16:04:52 +0000
commit2edc3a6b8df2962f4bcc769fd2606e4f6c36fb06 (patch)
tree4ad876aa8eec3475f0eeb6dc88b45cc2c85b6187 /tools/llvm-nm
parent929b0fb893f2c794a450975d802c0b39752effc0 (diff)
downloadllvm-2edc3a6b8df2962f4bcc769fd2606e4f6c36fb06.tar.gz
llvm-2edc3a6b8df2962f4bcc769fd2606e4f6c36fb06.tar.bz2
llvm-2edc3a6b8df2962f4bcc769fd2606e4f6c36fb06.tar.xz
Pass the computed magic to createBinary and createObjectFile if available.
identify_magic is not free, so we should avoid calling it twice. The argument also makes it cheap for createBinary to just forward to createObjectFile. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199813 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-nm')
-rw-r--r--tools/llvm-nm/llvm-nm.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/llvm-nm/llvm-nm.cpp b/tools/llvm-nm/llvm-nm.cpp
index 71f5046fca..e4e62091d5 100644
--- a/tools/llvm-nm/llvm-nm.cpp
+++ b/tools/llvm-nm/llvm-nm.cpp
@@ -580,7 +580,7 @@ static void DumpSymbolNamesFromFile(std::string &Filename) {
delete Result;
}
} else if (magic == sys::fs::file_magic::archive) {
- ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take());
+ ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take(), magic);
if (error(BinaryOrErr.getError(), Filename))
return;
OwningPtr<Binary> arch(BinaryOrErr.get());
@@ -631,7 +631,7 @@ static void DumpSymbolNamesFromFile(std::string &Filename) {
}
}
} else if (magic == sys::fs::file_magic::macho_universal_binary) {
- ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take());
+ ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take(), magic);
if (error(BinaryOrErr.getError(), Filename))
return;
OwningPtr<Binary> Bin(BinaryOrErr.get());
@@ -649,7 +649,7 @@ static void DumpSymbolNamesFromFile(std::string &Filename) {
}
}
} else if (magic.is_object()) {
- ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take());
+ ErrorOr<Binary *> BinaryOrErr = object::createBinary(Buffer.take(), magic);
if (error(BinaryOrErr.getError(), Filename))
return;
OwningPtr<Binary> obj(BinaryOrErr.get());