forked from OSchip/llvm-project
Revert part of r193291, restoring the deletion of loaded objects.
Without this, customers of the MCJIT were leaking memory like crazy. It's not really clear what the *right* memory management is here, so I'm not trying to add lots of tests or other logic, just trying to get us back to a better baseline. I'll follow up on the original commit to figure out the right path forward. llvm-svn: 193323
This commit is contained in:
parent
741e6ef4d4
commit
d55d159d09
|
@ -76,6 +76,15 @@ MCJIT::~MCJIT() {
|
|||
//
|
||||
Modules.clear();
|
||||
Dyld.deregisterEHFrames();
|
||||
|
||||
LoadedObjectMap::iterator it, end = LoadedObjects.end();
|
||||
for (it = LoadedObjects.begin(); it != end; ++it) {
|
||||
ObjectImage *Obj = it->second;
|
||||
if (Obj) {
|
||||
NotifyFreeingObject(*Obj);
|
||||
delete Obj;
|
||||
}
|
||||
}
|
||||
LoadedObjects.clear();
|
||||
delete TM;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue