mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-09-24 23:28:41 +00:00
Make parseBitcodeFile return an ErrorOr<Module *>.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199279 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -69,12 +69,14 @@ Module *llvm::ParseIR(MemoryBuffer *Buffer, SMDiagnostic &Err,
|
||||
TimePassesIsEnabled);
|
||||
if (isBitcode((const unsigned char *)Buffer->getBufferStart(),
|
||||
(const unsigned char *)Buffer->getBufferEnd())) {
|
||||
std::string ErrMsg;
|
||||
Module *M = ParseBitcodeFile(Buffer, Context, &ErrMsg);
|
||||
if (M == 0)
|
||||
ErrorOr<Module *> ModuleOrErr = parseBitcodeFile(Buffer, Context);
|
||||
Module *M = 0;
|
||||
if (error_code EC = ModuleOrErr.getError())
|
||||
Err = SMDiagnostic(Buffer->getBufferIdentifier(), SourceMgr::DK_Error,
|
||||
ErrMsg);
|
||||
// ParseBitcodeFile does not take ownership of the Buffer.
|
||||
EC.message());
|
||||
else
|
||||
M = ModuleOrErr.get();
|
||||
// parseBitcodeFile does not take ownership of the Buffer.
|
||||
delete Buffer;
|
||||
return M;
|
||||
}
|
||||
|
Reference in New Issue
Block a user