IntelJITEventListener updates to fix breaks by recent changes to EngineBuilder and...
authorElena Demikhovsky <elena.demikhovsky@intel.com>
Thu, 21 Aug 2014 07:01:55 +0000 (07:01 +0000)
committerElena Demikhovsky <elena.demikhovsky@intel.com>
Thu, 21 Aug 2014 07:01:55 +0000 (07:01 +0000)
By Arch Robison.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216159 91177308-0d34-0410-b5e6-96231b3b80d8

lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp
tools/llvm-jitlistener/llvm-jitlistener.cpp
unittests/ExecutionEngine/JIT/JITEventListenerTestCommon.h

index 4e22a8b3ea0d4745552cb826c4f07be498d94098..29be7c749028a8c4a432f07d35f36cd926f07ae1 100644 (file)
@@ -190,7 +190,7 @@ void IntelJITEventListener::NotifyFreeingMachineCode(void *FnStart) {
 void IntelJITEventListener::NotifyObjectEmitted(const ObjectImage &Obj) {
   // Get the address of the object image for use as a unique identifier
   const void* ObjData = Obj.getData().data();
-  DIContext* Context = DIContext::getDWARFContext(Obj.getObjectFile());
+  DIContext* Context = DIContext::getDWARFContext(*Obj.getObjectFile());
   MethodAddressVector Functions;
 
   // Use symbol info to iterate functions in the object.
index c159aa506d6a16c8cf79675fe69dc4bb27d51cdb..a6554698c178d0ad68b689bfcb0914f053b7c4eb 100644 (file)
@@ -113,7 +113,7 @@ protected:
 
     // Parse the bitcode...
     SMDiagnostic Err;
-    TheModule = ParseIRFile(IRFile, Err, Context);
+    std::unique_ptr<Module> TheModule(ParseIRFile(IRFile, Err, Context));
     if (!TheModule) {
       errs() << Err.getMessage();
       return;
@@ -145,7 +145,7 @@ protected:
 
     // Compile the IR
     std::string Error;
-    TheJIT.reset(EngineBuilder(TheModule)
+    TheJIT.reset(EngineBuilder(std::move(TheModule))
       .setEngineKind(EngineKind::JIT)
       .setErrorStr(&Error)
       .setJITMemoryManager(MemMgr)
@@ -160,7 +160,6 @@ protected:
   }
 
   LLVMContext Context; // Global ownership
-  Module *TheModule; // Owned by ExecutionEngine.
   JITMemoryManager *JMM; // Owned by ExecutionEngine.
   std::unique_ptr<ExecutionEngine> TheJIT;
 
index 61220f545f9fa1c4dd9084fe45d5d0ba9a48790e..2af688c777e17745a0c90980e4a877a3bc93172d 100644 (file)
@@ -66,7 +66,7 @@ public:
   JITEventListenerTestBase(WrapperT* w)
   : MockWrapper(w)
   , M(new llvm::Module("module", llvm::getGlobalContext()))
-  , EE(llvm::EngineBuilder(M)
+  , EE(llvm::EngineBuilder(std::unique_ptr<llvm::Module>(M))
     .setEngineKind(llvm::EngineKind::JIT)
     .setOptLevel(llvm::CodeGenOpt::None)
     .create())