summaryrefslogtreecommitdiff
path: root/tools/llvm-nm
diff options
context:
space:
mode:
authorMichael J. Spencer <bigcheesegs@gmail.com>2011-06-13 11:12:42 +0000
committerMichael J. Spencer <bigcheesegs@gmail.com>2011-06-13 11:12:42 +0000
commitbc437ebbca77cf8a7e2e47e3666c4a0114ccc2d1 (patch)
tree046f0ddb6ad5823887e7f221f989ac21c15e7e1a /tools/llvm-nm
parent69aec36f9b3129ba6eb83d64cde31c3d86d6d39a (diff)
downloadllvm-bc437ebbca77cf8a7e2e47e3666c4a0114ccc2d1.tar.gz
llvm-bc437ebbca77cf8a7e2e47e3666c4a0114ccc2d1.tar.bz2
llvm-bc437ebbca77cf8a7e2e47e3666c4a0114ccc2d1.tar.xz
Modify llvm-nm to use new Binary creation method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132912 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-nm')
-rw-r--r--tools/llvm-nm/llvm-nm.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/tools/llvm-nm/llvm-nm.cpp b/tools/llvm-nm/llvm-nm.cpp
index 5315b6cef6..f6eb33c9e6 100644
--- a/tools/llvm-nm/llvm-nm.cpp
+++ b/tools/llvm-nm/llvm-nm.cpp
@@ -317,13 +317,13 @@ static void DumpSymbolNamesFromFile(std::string &Filename) {
MultipleFiles = true;
std::for_each (Modules.begin(), Modules.end(), DumpSymbolNamesFromModule);
} else if (aPath.isObjectFile()) {
- std::auto_ptr<ObjectFile> obj(ObjectFile::createObjectFile(aPath.str()));
- if (!obj.get()) {
- errs() << ToolName << ": " << Filename << ": "
- << "Failed to open object file\n";
+ OwningPtr<Binary> obj;
+ if (error_code ec = object::createBinary(aPath.str(), obj)) {
+ errs() << ToolName << ": " << Filename << ": " << ec.message() << ".\n";
return;
}
- DumpSymbolNamesFromObject(obj.get());
+ if (object::ObjectFile *o = dyn_cast<ObjectFile>(obj.get()))
+ DumpSymbolNamesFromObject(o);
} else {
errs() << ToolName << ": " << Filename << ": "
<< "unrecognizable file type\n";