diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2016-11-09 17:49:19 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2016-11-09 17:49:19 +0000 |
commit | 76c218e0944189a0c16fb38a6a3a74c6b930810e (patch) | |
tree | 955b1d9e34fdf7a66aabd2417200225ea179618e /tools/llvm-dis | |
parent | 5d84a0761edf17e5fde97f200e525e066be54b78 (diff) |
Bitcode: Change the materializer interface to return llvm::Error.
Differential Revision: https://reviews.llvm.org/D26439
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@286382 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-dis')
-rw-r--r-- | tools/llvm-dis/llvm-dis.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/tools/llvm-dis/llvm-dis.cpp b/tools/llvm-dis/llvm-dis.cpp index c26b68d7abb..3377b4286f9 100644 --- a/tools/llvm-dis/llvm-dis.cpp +++ b/tools/llvm-dis/llvm-dis.cpp @@ -137,21 +137,19 @@ static void diagnosticHandler(const DiagnosticInfo &DI, void *Context) { exit(1); } -static Expected<std::unique_ptr<Module>> openInputFile(LLVMContext &Context) { - ErrorOr<std::unique_ptr<MemoryBuffer>> MBOrErr = - MemoryBuffer::getFileOrSTDIN(InputFilename); - if (!MBOrErr) - return errorCodeToError(MBOrErr.getError()); - ErrorOr<std::unique_ptr<Module>> MOrErr = - getOwningLazyBitcodeModule(std::move(*MBOrErr), Context, - /*ShouldLazyLoadMetadata=*/true); - if (!MOrErr) - return errorCodeToError(MOrErr.getError()); +static ExitOnError ExitOnErr; + +static std::unique_ptr<Module> openInputFile(LLVMContext &Context) { + std::unique_ptr<MemoryBuffer> MB = + ExitOnErr(errorOrToExpected(MemoryBuffer::getFileOrSTDIN(InputFilename))); + std::unique_ptr<Module> M = ExitOnErr(errorOrToExpected( + getOwningLazyBitcodeModule(std::move(MB), Context, + /*ShouldLazyLoadMetadata=*/true))); if (MaterializeMetadata) - (*MOrErr)->materializeMetadata(); + ExitOnErr(M->materializeMetadata()); else - (*MOrErr)->materializeAll(); - return std::move(*MOrErr); + ExitOnErr(M->materializeAll()); + return M; } int main(int argc, char **argv) { @@ -159,6 +157,8 @@ int main(int argc, char **argv) { sys::PrintStackTraceOnErrorSignal(argv[0]); PrettyStackTraceProgram X(argc, argv); + ExitOnErr.setBanner(std::string(argv[0]) + ": error: "); + LLVMContext Context; llvm_shutdown_obj Y; // Call llvm_shutdown() on exit. |