summaryrefslogtreecommitdiff
path: root/include/llvm/PassRegistry.h
diff options
context:
space:
mode:
authorOwen Anderson <resistor@mac.com>2010-10-20 22:22:30 +0000
committerOwen Anderson <resistor@mac.com>2010-10-20 22:22:30 +0000
commit75f6df283f726c289b240fe8c5f2f42cdfff5d5f (patch)
treedb80bdfeaf16f8f7510d3d24f9603e33f1bb0e7f /include/llvm/PassRegistry.h
parentba13864483b696e7f8e2058c3a50b5d901f2213b (diff)
downloadllvm-75f6df283f726c289b240fe8c5f2f42cdfff5d5f.tar.gz
llvm-75f6df283f726c289b240fe8c5f2f42cdfff5d5f.tar.bz2
llvm-75f6df283f726c289b240fe8c5f2f42cdfff5d5f.tar.xz
Attempt to fix valgrind complaining about (benign) leaks in pass registration by having PassRegistry
delete PassInfo objects that were created using new-style initialization. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116959 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/PassRegistry.h')
-rw-r--r--include/llvm/PassRegistry.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/llvm/PassRegistry.h b/include/llvm/PassRegistry.h
index 31d48a4e28..5d89c49221 100644
--- a/include/llvm/PassRegistry.h
+++ b/include/llvm/PassRegistry.h
@@ -53,7 +53,7 @@ public:
/// registerPass - Register a pass (by means of its PassInfo) with the
/// registry. Required in order to use the pass with a PassManager.
- void registerPass(const PassInfo &PI);
+ void registerPass(const PassInfo &PI, bool ShouldFree = false);
/// registerPass - Unregister a pass (by means of its PassInfo) with the
/// registry.
@@ -63,7 +63,8 @@ public:
// an analysis group) with the registry. Like registerPass, this is required
// in order for a PassManager to be able to use this group/pass.
void registerAnalysisGroup(const void *InterfaceID, const void *PassID,
- PassInfo& Registeree, bool isDefault);
+ PassInfo& Registeree, bool isDefault,
+ bool ShouldFree = false);
/// enumerateWith - Enumerate the registered passes, calling the provided
/// PassRegistrationListener's passEnumerate() callback on each of them.