restore MyThread::ip in MyThread::CallTrace destructor

This is necessary to ensure we can unwind the stack properly on ARM
after returning from a recursive invocation of vmInvoke.
This commit is contained in:
Joel Dice 2011-02-25 11:04:23 -07:00
parent 42fd021acf
commit a4c4d54cdd

View File

@ -109,7 +109,7 @@ class MyThread: public Thread {
t->scratch = scratch;
doTransition(t, 0, stack, continuation, next);
doTransition(t, ip, stack, continuation, next);
}
MyThread* t;
@ -2040,6 +2040,7 @@ findUnwindTarget(MyThread* t, void** targetIp, void** targetFrame,
target = method;
}
} else {
expect(t, ip);
*targetIp = ip;
*targetFrame = 0;
*targetStack = static_cast<void**>(stack)