summary refs log tree commit diff
path: root/src/rustllvm
diff options
context:
space:
mode:
authorBrian Anderson <banderson@mozilla.com>2013-06-19 15:18:25 -0700
committerBrian Anderson <banderson@mozilla.com>2013-06-19 15:18:25 -0700
commitb7a69198992fceb7b2c6affb5e0a7ed862ebc090 (patch)
tree226006913791b6edbc424a7f948757212845bf8e /src/rustllvm
parent1120f8c1e57b7b30134d670dd1dfc18c6444c15f (diff)
downloadrust-b7a69198992fceb7b2c6affb5e0a7ed862ebc090.tar.gz
rust-b7a69198992fceb7b2c6affb5e0a7ed862ebc090.zip
rustc: Dispose of LLVM passes in test cases
Diffstat (limited to 'src/rustllvm')
-rw-r--r--src/rustllvm/PassWrapper.cpp5
-rw-r--r--src/rustllvm/rustllvm.def.in1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/rustllvm/PassWrapper.cpp b/src/rustllvm/PassWrapper.cpp
index 53b291ff470..32b6df4e1dd 100644
--- a/src/rustllvm/PassWrapper.cpp
+++ b/src/rustllvm/PassWrapper.cpp
@@ -63,3 +63,8 @@ extern "C" LLVMPassRef LLVMCreatePass(const char * PassName) {
         return (LLVMPassRef)0;
     }
 }
+
+extern "C" void LLVMDestroyPass(LLVMPassRef PassRef) {
+    Pass *p = unwrap(PassRef);
+    delete p;
+}
diff --git a/src/rustllvm/rustllvm.def.in b/src/rustllvm/rustllvm.def.in
index 2a3f7de9bf5..d5f03ac604b 100644
--- a/src/rustllvm/rustllvm.def.in
+++ b/src/rustllvm/rustllvm.def.in
@@ -588,6 +588,7 @@ LLVMInlineAsm
 LLVMInitializePasses
 LLVMAddPass
 LLVMCreatePass
+LLVMDestroyPass
 LLVMDIBuilderCreate
 LLVMDIBuilderDispose
 LLVMDIBuilderFinalize