use the new MemoryBuffer interfaces to simplify error reporting in clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36900 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvm-prof/llvm-prof.cpp b/tools/llvm-prof/llvm-prof.cpp
index 106eed8..f88f1fc 100644
--- a/tools/llvm-prof/llvm-prof.cpp
+++ b/tools/llvm-prof/llvm-prof.cpp
@@ -118,13 +118,11 @@
     // Read in the bytecode file...
     std::string ErrorMessage;
     Module *M;
-    MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(&BytecodeFile[0],
-                                                        BytecodeFile.size());
-    if (Buffer == 0)
-      ErrorMessage = "Error reading file '" + BytecodeFile + "'";
-    else
+    if (MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(BytecodeFile,
+                                                            &ErrorMessage)) {
       M = ParseBitcodeFile(Buffer, &ErrorMessage);
-    delete Buffer;
+      delete Buffer;
+    }
     if (M == 0) {
       std::cerr << argv[0] << ": " << BytecodeFile << ": " 
         << ErrorMessage << "\n";