Lines Matching refs:self

48 static void InterpreterJni(Thread* self,  in InterpreterJni()  argument
57 ScopedObjectAccessUnchecked soa(self); in InterpreterJni()
66 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
75 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
82 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
89 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
96 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
107 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
116 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
126 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
134 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
141 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
152 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
163 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
172 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
183 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
197 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
206 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
217 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
221 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
227 ScopedThreadStateChange tsc(self, kNative); in InterpreterJni()
248 Thread* self, in Execute() argument
258 if (kIsDebugBuild && self->UseMterp() != CanUseMterp()) { in Execute()
260 MutexLock tll_mu(self, *Locks::thread_list_lock_); in Execute()
261 DCHECK_EQ(self->UseMterp(), CanUseMterp()); in Execute()
267 self->AssertNoPendingException(); in Execute()
273 instrumentation->MethodEnterEvent(self, in Execute()
283 self, in Execute()
292 if (UNLIKELY(self->IsExceptionPending())) { in Execute()
293 instrumentation->MethodUnwindEvent(self, in Execute()
301 self, in Execute()
313 if (!stay_in_interpreter && !self->IsForceInterpreter()) { in Execute()
316 jit->MethodEntered(self, shadow_frame.GetMethod()); in Execute()
321 self->PopShadowFrame(); in Execute()
326 ArtInterpreterToCompiledCodeBridge(self, nullptr, &shadow_frame, arg_offset, &result); in Execute()
328 self->PushShadowFrame(&shadow_frame); in Execute()
338 DCheckStaticState(self, method); in Execute()
351 return ExecuteSwitchImpl<false, true>(self, accessor, shadow_frame, result_register, in Execute()
354 return ExecuteSwitchImpl<false, false>(self, accessor, shadow_frame, result_register, in Execute()
359 if (!self->UseMterp()) { in Execute()
360 return ExecuteSwitchImpl<false, false>(self, accessor, shadow_frame, result_register, in Execute()
363 bool returned = ExecuteMterpImpl(self, in Execute()
371 result_register = ExecuteSwitchImpl<false, false>(self, accessor, shadow_frame, in Execute()
383 return ExecuteSwitchImpl<false, true>(self, accessor, shadow_frame, result_register, in Execute()
386 return ExecuteSwitchImpl<false, false>(self, accessor, shadow_frame, result_register, in Execute()
396 return ExecuteSwitchImpl<true, true>(self, accessor, shadow_frame, result_register, in Execute()
399 return ExecuteSwitchImpl<true, false>(self, accessor, shadow_frame, result_register, in Execute()
405 return ExecuteSwitchImpl<true, true>(self, accessor, shadow_frame, result_register, in Execute()
408 return ExecuteSwitchImpl<true, false>(self, accessor, shadow_frame, result_register, in Execute()
415 void EnterInterpreterFromInvoke(Thread* self, in EnterInterpreterFromInvoke() argument
421 DCHECK_EQ(self, Thread::Current()); in EnterInterpreterFromInvoke()
423 if (UNLIKELY(__builtin_frame_address(0) < self->GetStackEndForInterpreter(implicit_check))) { in EnterInterpreterFromInvoke()
424 ThrowStackOverflowError(self); in EnterInterpreterFromInvoke()
436 const char* old_cause = self->StartAssertNoThreadSuspension("EnterInterpreterFromInvoke"); in EnterInterpreterFromInvoke()
444 self->EndAssertNoThreadSuspension(old_cause); in EnterInterpreterFromInvoke()
456 ShadowFrame* last_shadow_frame = self->GetManagedStack()->GetTopShadowFrame(); in EnterInterpreterFromInvoke()
460 self->PushShadowFrame(shadow_frame); in EnterInterpreterFromInvoke()
491 self->EndAssertNoThreadSuspension(old_cause); in EnterInterpreterFromInvoke()
496 StackHandleScope<1> hs(self); in EnterInterpreterFromInvoke()
499 self, h_class, /*can_init_fields=*/ true, /*can_init_parents=*/ true))) { in EnterInterpreterFromInvoke()
500 CHECK(self->IsExceptionPending()); in EnterInterpreterFromInvoke()
501 self->PopShadowFrame(); in EnterInterpreterFromInvoke()
508 JValue r = Execute(self, accessor, *shadow_frame, JValue(), stay_in_interpreter); in EnterInterpreterFromInvoke()
519 UnstartedRuntime::Jni(self, method, receiver.Ptr(), args, result); in EnterInterpreterFromInvoke()
521 InterpreterJni(self, method, shorty, receiver, args, result); in EnterInterpreterFromInvoke()
524 self->PopShadowFrame(); in EnterInterpreterFromInvoke()
534 void EnterInterpreterFromDeoptimize(Thread* self, in EnterInterpreterFromDeoptimize() argument
550 self->SetTopOfShadowStack(shadow_frame); in EnterInterpreterFromDeoptimize()
554 if (UNLIKELY(self->IsExceptionPending())) { in EnterInterpreterFromDeoptimize()
561 self, *shadow_frame, instrumentation) ? shadow_frame->GetDexPC() : dex::kDexNoIndex; in EnterInterpreterFromDeoptimize()
626 value = Execute(self, in EnterInterpreterFromDeoptimize()
645 JValue EnterInterpreterFromEntryPoint(Thread* self, const CodeItemDataAccessor& accessor, in EnterInterpreterFromEntryPoint() argument
647 DCHECK_EQ(self, Thread::Current()); in EnterInterpreterFromEntryPoint()
649 if (UNLIKELY(__builtin_frame_address(0) < self->GetStackEndForInterpreter(implicit_check))) { in EnterInterpreterFromEntryPoint()
650 ThrowStackOverflowError(self); in EnterInterpreterFromEntryPoint()
656 jit->NotifyCompiledCodeToInterpreterTransition(self, shadow_frame->GetMethod()); in EnterInterpreterFromEntryPoint()
658 return Execute(self, accessor, *shadow_frame, JValue()); in EnterInterpreterFromEntryPoint()
661 void ArtInterpreterToInterpreterBridge(Thread* self, in ArtInterpreterToInterpreterBridge() argument
666 if (UNLIKELY(__builtin_frame_address(0) < self->GetStackEndForInterpreter(implicit_check))) { in ArtInterpreterToInterpreterBridge()
667 ThrowStackOverflowError(self); in ArtInterpreterToInterpreterBridge()
671 self->PushShadowFrame(shadow_frame); in ArtInterpreterToInterpreterBridge()
678 StackHandleScope<1> hs(self); in ArtInterpreterToInterpreterBridge()
681 self, h_class, /*can_init_fields=*/ true, /*can_init_parents=*/ true))) { in ArtInterpreterToInterpreterBridge()
682 DCHECK(self->IsExceptionPending()); in ArtInterpreterToInterpreterBridge()
683 self->PopShadowFrame(); in ArtInterpreterToInterpreterBridge()
691 result->SetJ(Execute(self, accessor, *shadow_frame, JValue()).GetJ()); in ArtInterpreterToInterpreterBridge()
698 UnstartedRuntime::Jni(self, shadow_frame->GetMethod(), receiver.Ptr(), args, result); in ArtInterpreterToInterpreterBridge()
701 self->PopShadowFrame(); in ArtInterpreterToInterpreterBridge()
709 void InitInterpreterTls(Thread* self) { in InitInterpreterTls() argument
710 InitMterpTls(self); in InitInterpreterTls()
713 bool PrevFrameWillRetry(Thread* self, const ShadowFrame& frame) { in PrevFrameWillRetry() argument
716 NthCallerVisitor vis(self, 1, false); in PrevFrameWillRetry()
720 prev_frame = self->FindDebuggerShadowFrame(vis.GetFrameId()); in PrevFrameWillRetry()