[llvm-commits] [llvm-gcc-4.2] r99232 - /llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
Chris Lattner
sabre at nondot.org
Mon Mar 22 16:59:48 PDT 2010
Author: lattner
Date: Mon Mar 22 18:59:48 2010
New Revision: 99232
URL: http://llvm.org/viewvc/llvm-project?rev=99232&view=rev
Log:
"fix" PR6656: the passmanager needs to be destroyed before
the module is, in case immutable passes have asserting VH's
pointing into the IR. Immutable passes apparently don't
get their doFinalization methods called, which seems like
a bug.
Modified:
llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=99232&r1=99231&r2=99232&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Mon Mar 22 18:59:48 2010
@@ -975,6 +975,9 @@
// llvm_call_llvm_shutdown - Release LLVM global state.
void llvm_call_llvm_shutdown(void) {
#ifndef NDEBUG
+ delete PerModulePasses;
+ delete PerFunctionPasses;
+ delete CodeGenPasses;
delete TheModule;
llvm_shutdown();
#endif
More information about the llvm-commits
mailing list