Lines Matching refs:shadow_frame

120 bool DoCall(ArtMethod* called_method, Thread* self, ShadowFrame& shadow_frame,
129 ShadowFrame& shadow_frame, in DoFastInvoke() argument
137 : shadow_frame.GetVRegReference(vregC); in DoFastInvoke()
138 ArtMethod* sf_method = shadow_frame.GetMethod(); in DoFastInvoke()
153 jit->InvokeVirtualOrInterface(receiver, sf_method, shadow_frame.GetDexPC(), called_method); in DoFastInvoke()
156 if (MterpHandleIntrinsic(&shadow_frame, called_method, inst, inst_data, in DoFastInvoke()
157 shadow_frame.GetResultRegister())) { in DoFastInvoke()
161 return DoCall<false, false>(called_method, self, shadow_frame, inst, inst_data, result); in DoFastInvoke()
169 ShadowFrame& shadow_frame, in DoInvoke() argument
180 (type == kStatic) ? nullptr : shadow_frame.GetVRegReference(vregC); in DoInvoke()
181 ArtMethod* sf_method = shadow_frame.GetMethod(); in DoInvoke()
196 jit->InvokeVirtualOrInterface(receiver, sf_method, shadow_frame.GetDexPC(), called_method); in DoInvoke()
203 self, receiver.Ptr(), sf_method, shadow_frame.GetDexPC(), called_method); in DoInvoke()
206 return DoCall<is_range, do_access_check>(called_method, self, shadow_frame, inst, inst_data, in DoInvoke()
229 ShadowFrame& shadow_frame, \
241 ShadowFrame& shadow_frame,
249 ShadowFrame& shadow_frame,
257 static inline bool DoInvokeVirtualQuick(Thread* self, ShadowFrame& shadow_frame, in DoInvokeVirtualQuick() argument
261 ObjPtr<mirror::Object> const receiver = shadow_frame.GetVRegReference(vregC); in DoInvokeVirtualQuick()
284 receiver, shadow_frame.GetMethod(), shadow_frame.GetDexPC(), called_method); in DoInvokeVirtualQuick()
285 jit->AddSamples(self, shadow_frame.GetMethod(), 1, /*with_backedges*/false); in DoInvokeVirtualQuick()
291 self, receiver.Ptr(), shadow_frame.GetMethod(), shadow_frame.GetDexPC(), called_method); in DoInvokeVirtualQuick()
294 return DoCall<is_range, false>(called_method, self, shadow_frame, inst, inst_data, result); in DoInvokeVirtualQuick()
302 bool DoFieldGet(Thread* self, ShadowFrame& shadow_frame, const Instruction* inst,
308 bool DoIGetQuick(ShadowFrame& shadow_frame, const Instruction* inst, uint16_t inst_data)
315 bool DoFieldPut(Thread* self, const ShadowFrame& shadow_frame, const Instruction* inst,
321 bool DoIPutQuick(const ShadowFrame& shadow_frame, const Instruction* inst, uint16_t inst_data)
328 ShadowFrame& shadow_frame, in ResolveString() argument
341 ArtMethod* method = shadow_frame.GetMethod(); in ResolveString()
353 static inline bool DoIntDivide(ShadowFrame& shadow_frame, size_t result_reg, in DoIntDivide() argument
362 shadow_frame.SetVReg(result_reg, kMinInt); in DoIntDivide()
364 shadow_frame.SetVReg(result_reg, dividend / divisor); in DoIntDivide()
371 static inline bool DoIntRemainder(ShadowFrame& shadow_frame, size_t result_reg, in DoIntRemainder() argument
380 shadow_frame.SetVReg(result_reg, 0); in DoIntRemainder()
382 shadow_frame.SetVReg(result_reg, dividend % divisor); in DoIntRemainder()
389 static inline bool DoLongDivide(ShadowFrame& shadow_frame, in DoLongDivide() argument
400 shadow_frame.SetVRegLong(result_reg, kMinLong); in DoLongDivide()
402 shadow_frame.SetVRegLong(result_reg, dividend / divisor); in DoLongDivide()
409 static inline bool DoLongRemainder(ShadowFrame& shadow_frame, in DoLongRemainder() argument
420 shadow_frame.SetVRegLong(result_reg, 0); in DoLongRemainder()
422 shadow_frame.SetVRegLong(result_reg, dividend % divisor); in DoLongRemainder()
430 bool DoFilledNewArray(const Instruction* inst, const ShadowFrame& shadow_frame,
435 static inline int32_t DoPackedSwitch(const Instruction* inst, const ShadowFrame& shadow_frame, in DoPackedSwitch() argument
440 int32_t test_val = shadow_frame.GetVReg(inst->VRegA_31t(inst_data)); in DoPackedSwitch()
463 static inline int32_t DoSparseSwitch(const Instruction* inst, const ShadowFrame& shadow_frame, in DoSparseSwitch() argument
468 int32_t test_val = shadow_frame.GetVReg(inst->VRegA_31t(inst_data)); in DoSparseSwitch()
504 ShadowFrame& shadow_frame,
508 NO_RETURN void UnexpectedOpcode(const Instruction* inst, const ShadowFrame& shadow_frame)
515 static inline void TraceExecution(const ShadowFrame& shadow_frame, const Instruction* inst, in TraceExecution() argument
521 oss << shadow_frame.GetMethod()->PrettyMethod() in TraceExecution()
523 << inst->DumpString(shadow_frame.GetMethod()->GetDexFile()) << "\n"; in TraceExecution()
524 for (uint32_t i = 0; i < shadow_frame.NumberOfVRegs(); ++i) { in TraceExecution()
525 uint32_t raw_value = shadow_frame.GetVReg(i); in TraceExecution()
526 ObjPtr<mirror::Object> ref_value = shadow_frame.GetVRegReference(i); in TraceExecution()
547 static inline void AssignRegister(ShadowFrame* new_shadow_frame, const ShadowFrame& shadow_frame, in AssignRegister() argument
551 uint32_t src_value = shadow_frame.GetVReg(src_reg); in AssignRegister()
552 ObjPtr<mirror::Object> o = shadow_frame.GetVRegReference<kVerifyNone>(src_reg); in AssignRegister()
567 ShadowFrame* shadow_frame,
601 void SetStringInitValueToAllAliases(ShadowFrame* shadow_frame,
609 ShadowFrame& shadow_frame, \
631 ShadowFrame& shadow_frame, \
643 bool DoInvokeVirtualQuick<_is_range>(Thread* self, ShadowFrame& shadow_frame, \