mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-04-02 07:41:38 +00:00
Don't release the Module, as that invalidates the Module* within the
ModuleProvider, which has bad consequences in lli::callAsMain() which tries to access that same Module*. llvm-svn: 9205
This commit is contained in:
parent
21797d71d9
commit
546d6e6764
@ -28,7 +28,7 @@ ExecutionEngine::ExecutionEngine(ModuleProvider *P) :
|
|||||||
}
|
}
|
||||||
|
|
||||||
ExecutionEngine::ExecutionEngine(Module *M) : CurMod(*M), MP(0) {
|
ExecutionEngine::ExecutionEngine(Module *M) : CurMod(*M), MP(0) {
|
||||||
assert(M && "Module is null?");
|
assert(M && "Module is null?");
|
||||||
}
|
}
|
||||||
|
|
||||||
ExecutionEngine::~ExecutionEngine() {
|
ExecutionEngine::~ExecutionEngine() {
|
||||||
@ -51,7 +51,7 @@ ExecutionEngine *ExecutionEngine::create(ModuleProvider *MP,
|
|||||||
// If we can't make a JIT, make an interpreter instead.
|
// If we can't make a JIT, make an interpreter instead.
|
||||||
try {
|
try {
|
||||||
if (EE == 0)
|
if (EE == 0)
|
||||||
EE = Interpreter::create(MP->releaseModule(), TraceMode);
|
EE = Interpreter::create(MP->materializeModule(), TraceMode);
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
EE = 0;
|
EE = 0;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user