diff --git a/src/compile.cpp b/src/compile.cpp index c29f403e61..046f3ad267 100644 --- a/src/compile.cpp +++ b/src/compile.cpp @@ -2190,6 +2190,9 @@ unwind(MyThread* t) object continuation; findUnwindTarget(t, &ip, &frame, &stack, &continuation); + t->trace->targetMethod = 0; + t->trace->nativeMethod = 0; + transition(t, ip, stack, continuation, t->trace); vmJump(ip, frame, stack, t, 0, 0); @@ -7328,11 +7331,6 @@ invokeNative(MyThread* t) uint64_t result = 0; t->trace->targetMethod = t->trace->nativeMethod; - - THREAD_RESOURCE0(t, { - static_cast(t)->trace->targetMethod = 0; - static_cast(t)->trace->nativeMethod = 0; - }); t->m->classpath->resolveNative(t, t->trace->nativeMethod); @@ -7355,6 +7353,9 @@ invokeNative(MyThread* t) transition(t, getIp(t), stack, t->continuation, t->trace); + t->trace->targetMethod = 0; + t->trace->nativeMethod = 0; + return result; }