[PM] Fix a bug where we didn't properly clear the list map when the list
[oota-llvm.git] / lib / IR / PassManager.cpp
index 17f6fbcf5469e7311d91a7aea3df319fb2d27eb9..3344b09953702e6907dde26dc329436cde964d64 100644 (file)
@@ -165,6 +165,8 @@ void FunctionAnalysisManager::invalidateImpl(Function *F,
   while (!InvalidatedPassIDs.empty())
     FunctionAnalysisResults.erase(
         std::make_pair(InvalidatedPassIDs.pop_back_val(), F));
+  if (ResultsList.empty())
+    FunctionAnalysisResultLists.erase(F);
 }
 
 char FunctionAnalysisManagerModuleProxy::PassID;