diff --git a/rocclr/compiler/lib/backends/common/codegen.cpp b/rocclr/compiler/lib/backends/common/codegen.cpp index bb646cedfd..d99f64983b 100644 --- a/rocclr/compiler/lib/backends/common/codegen.cpp +++ b/rocclr/compiler/lib/backends/common/codegen.cpp @@ -364,10 +364,11 @@ jitCodeGen(llvm::Module* Composite, OclJITEventListener Listener(output); llvm::InitializeNativeTargetAsmParser(); llvm::InitializeNativeTargetAsmPrinter(); - OCLMCJITMemoryManager* MemMgr = new OCLMCJITMemoryManager(); #if defined(LEGACY_COMPLIB) + OCLMCJITMemoryManager* MemMgr = new OCLMCJITMemoryManager(); llvm::EngineBuilder builder(Composite); #else + std::unique_ptr MemMgr(new OCLMCJITMemoryManager()); // FIXME: this llvm::Module* actually seems to be got from unique_ptr::get() // somewhere, but acl functions use Module* instead of std::unique_ptr // llvm::EngineBuilder does std::move on this pointer further so Module* can be @@ -381,7 +382,7 @@ jitCodeGen(llvm::Module* Composite, builder.setJITMemoryManager(MemMgr); builder.setUseMCJIT(true); #else - builder.setMCJITMemoryManager(MemMgr); + builder.setMCJITMemoryManager(std::move(MemMgr)); #endif // builder.setRelocationModel(llvm::Reloc::PIC_) // builder.setCodeModel(llvm::CodeModel::Large) diff --git a/rocclr/compiler/lib/complibdefs b/rocclr/compiler/lib/complibdefs index c0691f513f..eb51c11516 100644 --- a/rocclr/compiler/lib/complibdefs +++ b/rocclr/compiler/lib/complibdefs @@ -71,7 +71,7 @@ ifdef ATI_OS_WINDOWS GCXXOPTS += /Ob1 endif - GCXXOPTS += -wd4985 -wd4355 -wd4800 + GCXXOPTS += -wd4985 -wd4355 -wd4800 -wd4291 GCPPFLAGS += $(DEFSWITCH) _SCL_SECURE_NO_WARNINGS