optimize strstr, PR5783
[oota-llvm.git] / lib / VMCore / LLVMContext.cpp
index 0ed21fb754ed7435c1fda49ccce334d26f8fff4c..3b4a1a3a155402a1498f19a167068823e4275659 100644 (file)
@@ -17,6 +17,7 @@
 #include "llvm/Constants.h"
 #include "llvm/Instruction.h"
 #include "llvm/Support/ManagedStatic.h"
+#include "llvm/Support/ValueHandle.h"
 #include "LLVMContextImpl.h"
 #include <set>
 
@@ -44,26 +45,6 @@ GetElementPtrConstantExpr::GetElementPtrConstantExpr
     OperandList[i+1] = IdxList[i];
 }
 
-bool LLVMContext::RemoveDeadMetadata() {
-  std::vector<const MDNode *> DeadMDNodes;
-  bool Changed = false;
-  while (1) {
-
-    for (FoldingSet<MDNode>::iterator 
-           I = pImpl->MDNodeSet.begin(),
-           E = pImpl->MDNodeSet.end(); I != E; ++I) {
-      const MDNode *N = &(*I);
-      if (N->use_empty()) 
-        DeadMDNodes.push_back(N);
-    }
-    
-    if (DeadMDNodes.empty())
-      return Changed;
-
-    while (!DeadMDNodes.empty()) {
-      const MDNode *N = DeadMDNodes.back(); DeadMDNodes.pop_back();
-      delete N;
-    }
-  }
-  return Changed;
+MetadataContext &LLVMContext::getMetadata() {
+  return pImpl->TheMetadata;
 }