| Index: lib/IRReader/IRReader.cpp
|
| diff --git a/lib/IRReader/IRReader.cpp b/lib/IRReader/IRReader.cpp
|
| index d55e1cea656401f2e5fe8e780d66355c089d4eaa..06b3cdfa8b0c78635a372c2c9f93d13227cb75a5 100644
|
| --- a/lib/IRReader/IRReader.cpp
|
| +++ b/lib/IRReader/IRReader.cpp
|
| @@ -102,19 +102,20 @@ Module *llvm::ParseIRFile(const std::string &Filename, SMDiagnostic &Err,
|
| Module *llvm::NaClParseIR(MemoryBuffer *Buffer,
|
| NaClFileFormat Format,
|
| SMDiagnostic &Err,
|
| + raw_ostream *Verbose,
|
| LLVMContext &Context) {
|
| NamedRegionTimer T(TimeIRParsingName, TimeIRParsingGroupName,
|
| TimePassesIsEnabled);
|
| if ((Format == PNaClFormat) &&
|
| isNaClBitcode((const unsigned char *)Buffer->getBufferStart(),
|
| (const unsigned char *)Buffer->getBufferEnd())) {
|
| - std::string ErrMsg;
|
| - Module *M = NaClParseBitcodeFile(Buffer, Context, &ErrMsg);
|
| - if (M == 0)
|
| + ErrorOr<Module *> ModuleOrErr =
|
| + NaClParseBitcodeFile(Buffer, Context, Verbose);
|
| + if (std::error_code EC = ModuleOrErr.getError())
|
| Err = SMDiagnostic(Buffer->getBufferIdentifier(), SourceMgr::DK_Error,
|
| - ErrMsg);
|
| + EC.message());
|
| // ParseBitcodeFile does not take ownership of the Buffer.
|
| - return M;
|
| + return ModuleOrErr.get();
|
| } else if (Format == LLVMFormat) {
|
| if (isBitcode((const unsigned char *)Buffer->getBufferStart(),
|
| (const unsigned char *)Buffer->getBufferEnd())) {
|
| @@ -137,6 +138,7 @@ Module *llvm::NaClParseIR(MemoryBuffer *Buffer,
|
| Module *llvm::NaClParseIRFile(const std::string &Filename,
|
| NaClFileFormat Format,
|
| SMDiagnostic &Err,
|
| + raw_ostream *Verbose,
|
| LLVMContext &Context) {
|
| ErrorOr<std::unique_ptr<MemoryBuffer>> ErrOrFile =
|
| MemoryBuffer::getFileOrSTDIN(Filename);
|
| @@ -146,7 +148,8 @@ Module *llvm::NaClParseIRFile(const std::string &Filename,
|
| return nullptr;
|
| }
|
|
|
| - return NaClParseIR(ErrOrFile.get().release(), Format, Err, Context);
|
| + return NaClParseIR(ErrOrFile.get().release(), Format, Err, Verbose,
|
| + Context);
|
| }
|
|
|
| // @LOCALMOD-END
|
|
|