summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2002-09-08 19:00:07 +0000
committerChris Lattner <sabre@nondot.org>2002-09-08 19:00:07 +0000
commitc4e4a996772279dd1155e1deac141a7a60da1c31 (patch)
tree86ad036df4960fb2ef561700e317c36d4d032394
parentd1e693f2a3883dacf213aa2b477540c57b53b714 (diff)
downloadexternal_llvm-c4e4a996772279dd1155e1deac141a7a60da1c31.zip
external_llvm-c4e4a996772279dd1155e1deac141a7a60da1c31.tar.gz
external_llvm-c4e4a996772279dd1155e1deac141a7a60da1c31.tar.bz2
Enable "garbage detection" of LLVM objects. Check for leaks after running
every pass. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3621 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/VMCore/PassManagerT.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/VMCore/PassManagerT.h b/lib/VMCore/PassManagerT.h
index e88693f..4a2ad88 100644
--- a/lib/VMCore/PassManagerT.h
+++ b/lib/VMCore/PassManagerT.h
@@ -17,6 +17,7 @@
#include "llvm/Pass.h"
#include "Support/CommandLine.h"
+#include "Support/LeakDetector.h"
#include <algorithm>
#include <iostream>
class Annotable;
@@ -217,6 +218,10 @@ public:
endPass(P);
MadeChanges |= Changed;
+ // Check for memory leaks by the pass...
+ LeakDetector::checkForGarbage(std::string("after running pass '") +
+ P->getPassName() + "'");
+
if (Changed)
PMDebug::PrintPassInformation(getDepth()+1, "Made Modification", P,
(Annotable*)M);