Revert "[PM] Add pass run listeners to the pass manager."
[oota-llvm.git] / lib / IR / LLVMContextImpl.cpp
index 2bccd2a091be0e4296bd30ad1c01c95387b79952..78a3c2d304b92a49edae1a6c97a0a4494678a035 100644 (file)
 #include "llvm/ADT/STLExtras.h"
 #include "llvm/IR/Attributes.h"
 #include "llvm/IR/Module.h"
-#include "llvm/PassSupport.h"
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/Regex.h"
 #include <algorithm>
 using namespace llvm;
 
-/// Notify that we finished running a pass.
-void LLVMContextImpl::notifyPassRun(LLVMContext *C, Pass *P, Module *M,
-                                    Function *F, BasicBlock *BB) {
-  for (auto const &L : RunListeners)
-    L->passRun(C, P, M, F, BB);
-}
-/// Register the given PassRunListener to receive notifyPassRun()
-/// callbacks whenever a pass ran.
-void LLVMContextImpl::addRunListener(PassRunListener *L) {
-  RunListeners.push_back(L);
-}
-/// Unregister a PassRunListener so that it no longer receives
-/// notifyPassRun() callbacks.
-void LLVMContextImpl::removeRunListener(PassRunListener *L) {
-  auto I = std::find(RunListeners.begin(), RunListeners.end(), L);
-  assert(I != RunListeners.end() && "RunListener not registered!");
-  delete *I;
-  RunListeners.erase(I);
-}
-
 LLVMContextImpl::LLVMContextImpl(LLVMContext &C)
   : TheTrueVal(nullptr), TheFalseVal(nullptr),
     VoidTy(C, Type::VoidTyID),
@@ -199,11 +178,6 @@ LLVMContextImpl::~LLVMContextImpl() {
 
   // Destroy MDStrings.
   DeleteContainerSeconds(MDStringCache);
-
-  // Destroy all run listeners.
-  for (auto &L : RunListeners)
-    delete L;
-  RunListeners.clear();
 }
 
 // ConstantsContext anchors