Fix trunk buildfail after LLVM revision 239858
This commit is contained in:
10
builtins.cpp
10
builtins.cpp
@@ -788,13 +788,19 @@ AddBitcodeToModule(const unsigned char *bitcode, int length,
|
|||||||
llvm::MemoryBufferRef bcBuf = llvm::MemoryBuffer::getMemBuffer(sb)->getMemBufferRef();
|
llvm::MemoryBufferRef bcBuf = llvm::MemoryBuffer::getMemBuffer(sb)->getMemBufferRef();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if ISPC_LLVM_VERSION >= ISPC_LLVM_3_5
|
#if ISPC_LLVM_VERSION >= ISPC_LLVM_3_7 // LLVM 3.7+
|
||||||
|
llvm::ErrorOr<std::unique_ptr<llvm::Module>> ModuleOrErr = llvm::parseBitcodeFile(bcBuf, *g->ctx);
|
||||||
|
if (std::error_code EC = ModuleOrErr.getError())
|
||||||
|
Error(SourcePos(), "Error parsing stdlib bitcode: %s", EC.message().c_str());
|
||||||
|
else {
|
||||||
|
llvm::Module *bcModule = ModuleOrErr.get().release();
|
||||||
|
#elif ISPC_LLVM_VERSION == ISPC_LLVM_3_5 || ISPC_LLVM_VERSION == ISPC_LLVM_3_6
|
||||||
llvm::ErrorOr<llvm::Module *> ModuleOrErr = llvm::parseBitcodeFile(bcBuf, *g->ctx);
|
llvm::ErrorOr<llvm::Module *> ModuleOrErr = llvm::parseBitcodeFile(bcBuf, *g->ctx);
|
||||||
if (std::error_code EC = ModuleOrErr.getError())
|
if (std::error_code EC = ModuleOrErr.getError())
|
||||||
Error(SourcePos(), "Error parsing stdlib bitcode: %s", EC.message().c_str());
|
Error(SourcePos(), "Error parsing stdlib bitcode: %s", EC.message().c_str());
|
||||||
else {
|
else {
|
||||||
llvm::Module *bcModule = ModuleOrErr.get();
|
llvm::Module *bcModule = ModuleOrErr.get();
|
||||||
#else
|
#else // LLVM 3.2 - 3.4
|
||||||
std::string bcErr;
|
std::string bcErr;
|
||||||
llvm::Module *bcModule = llvm::ParseBitcodeFile(bcBuf, *g->ctx, &bcErr);
|
llvm::Module *bcModule = llvm::ParseBitcodeFile(bcBuf, *g->ctx, &bcErr);
|
||||||
if (!bcModule)
|
if (!bcModule)
|
||||||
|
|||||||
Reference in New Issue
Block a user