Home
last modified time | relevance | path

Searched refs:shadow_frame (Results 1 – 20 of 20) sorted by relevance

/art/runtime/interpreter/
Dinterpreter_switch_impl.cc28 uint32_t found_dex_pc = FindNextInstructionFollowingException(self, shadow_frame, \
55 instrumentation->DexPcMovedEvent(self, shadow_frame.GetThisObject(code_item->ins_size_), \
56 shadow_frame.GetMethod(), dex_pc); \
62 ShadowFrame& shadow_frame, JValue result_register) { in ExecuteSwitchImpl() argument
64 if (UNLIKELY(!shadow_frame.HasReferenceArray())) { in ExecuteSwitchImpl()
70 uint32_t dex_pc = shadow_frame.GetDexPC(); in ExecuteSwitchImpl()
78 instrumentation->MethodEnterEvent(self, shadow_frame.GetThisObject(code_item->ins_size_), in ExecuteSwitchImpl()
79 shadow_frame.GetMethod(), 0); in ExecuteSwitchImpl()
88 shadow_frame.SetDexPC(dex_pc); in ExecuteSwitchImpl()
89 TraceExecution(shadow_frame, inst, dex_pc, mh); in ExecuteSwitchImpl()
[all …]
Dinterpreter_goto_table_impl.cc37 shadow_frame.SetDexPC(dex_pc); \
38 TraceExecution(shadow_frame, inst, dex_pc, mh); \
114 ShadowFrame& shadow_frame, JValue result_register) { in ExecuteGotoImpl() argument
138 if (UNLIKELY(!shadow_frame.HasReferenceArray())) { in ExecuteGotoImpl()
144 uint32_t dex_pc = shadow_frame.GetDexPC(); in ExecuteGotoImpl()
156 instrumentation->MethodEnterEvent(self, shadow_frame.GetThisObject(code_item->ins_size_), in ExecuteGotoImpl()
157 shadow_frame.GetMethod(), 0); in ExecuteGotoImpl()
171 shadow_frame.SetVReg(inst->VRegA_12x(inst_data), in ExecuteGotoImpl()
172 shadow_frame.GetVReg(inst->VRegB_12x(inst_data))); in ExecuteGotoImpl()
177 shadow_frame.SetVReg(inst->VRegA_22x(inst_data), in ExecuteGotoImpl()
[all …]
Dinterpreter_common.cc25 void ThrowNullPointerExceptionFromInterpreter(const ShadowFrame& shadow_frame) { in ThrowNullPointerExceptionFromInterpreter() argument
26 ThrowNullPointerExceptionFromDexPC(shadow_frame.GetCurrentLocationForThrow()); in ThrowNullPointerExceptionFromInterpreter()
30 bool DoFieldGet(Thread* self, ShadowFrame& shadow_frame, const Instruction* inst, in DoFieldGet() argument
34 …ArtField* f = FindFieldFromCode<find_type, do_access_check>(field_idx, shadow_frame.GetMethod(), s… in DoFieldGet()
44 obj = shadow_frame.GetVRegReference(inst->VRegB_22c(inst_data)); in DoFieldGet()
46 ThrowNullPointerExceptionForFieldAccess(shadow_frame.GetCurrentLocationForThrow(), f, true); in DoFieldGet()
55 instrumentation->FieldReadEvent(self, this_object, shadow_frame.GetMethod(), in DoFieldGet()
56 shadow_frame.GetDexPC(), f); in DoFieldGet()
61 shadow_frame.SetVReg(vregA, f->GetBoolean(obj)); in DoFieldGet()
64 shadow_frame.SetVReg(vregA, f->GetByte(obj)); in DoFieldGet()
[all …]
Dinterpreter_common.h72 ShadowFrame& shadow_frame, JValue result_register);
77 ShadowFrame& shadow_frame, JValue result_register);
79 void ThrowNullPointerExceptionFromInterpreter(const ShadowFrame& shadow_frame)
100 bool DoCall(ArtMethod* method, Thread* self, ShadowFrame& shadow_frame,
106 static inline bool DoInvoke(Thread* self, ShadowFrame& shadow_frame, const Instruction* inst, in DoInvoke() argument
110 Object* receiver = (type == kStatic) ? nullptr : shadow_frame.GetVRegReference(vregC); in DoInvoke()
111 mirror::ArtMethod* sf_method = shadow_frame.GetMethod(); in DoInvoke()
124 return DoCall<is_range, do_access_check>(method, self, shadow_frame, inst, inst_data, result); in DoInvoke()
131 static inline bool DoInvokeVirtualQuick(Thread* self, ShadowFrame& shadow_frame, in DoInvokeVirtualQuick() argument
135 Object* const receiver = shadow_frame.GetVRegReference(vregC); in DoInvokeVirtualQuick()
[all …]
Dinterpreter.cc327 ShadowFrame& shadow_frame, JValue result_register) { in ExecuteGotoImpl() argument
335 ShadowFrame& shadow_frame, JValue result_register);
339 ShadowFrame& shadow_frame, JValue result_register);
343 ShadowFrame& shadow_frame, JValue result_register);
347 ShadowFrame& shadow_frame, JValue result_register);
351 ShadowFrame& shadow_frame, JValue result_register)
355 ShadowFrame& shadow_frame, JValue result_register) { in Execute() argument
356 DCHECK(shadow_frame.GetMethod() == mh.GetMethod() || in Execute()
357 shadow_frame.GetMethod()->GetDeclaringClass()->IsProxyClass()); in Execute()
358 DCHECK(!shadow_frame.GetMethod()->IsAbstract()); in Execute()
[all …]
Dinterpreter.h41 extern void EnterInterpreterFromDeoptimize(Thread* self, ShadowFrame* shadow_frame,
47 ShadowFrame& shadow_frame)
52 ShadowFrame* shadow_frame, JValue* result)
59 ShadowFrame* shadow_frame, JValue* result)
/art/runtime/entrypoints/interpreter/
Dinterpreter_entrypoints.cc30 ShadowFrame* shadow_frame, JValue* result) { in artInterpreterToCompiledCodeBridge() argument
31 mirror::ArtMethod* method = shadow_frame->GetMethod(); in artInterpreterToCompiledCodeBridge()
36 self->PushShadowFrame(shadow_frame); in artInterpreterToCompiledCodeBridge()
47 method = shadow_frame->GetMethod(); in artInterpreterToCompiledCodeBridge()
52 InvokeWithShadowFrame(self, shadow_frame, arg_offset, mh, result); in artInterpreterToCompiledCodeBridge()
54 method->Invoke(self, shadow_frame->GetVRegArgs(arg_offset), in artInterpreterToCompiledCodeBridge()
55 (shadow_frame->NumberOfVRegs() - arg_offset) * sizeof(uint32_t), in artInterpreterToCompiledCodeBridge()
Dinterpreter_entrypoints.h38 ShadowFrame* shadow_frame, JValue* result);
41 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/
Dthread.cc2046 ShadowFrame* shadow_frame = GetCurrentShadowFrame(); in VisitFrame() local
2047 if (shadow_frame != nullptr) { in VisitFrame()
2048 VisitShadowFrame(shadow_frame); in VisitFrame()
2055 void VisitShadowFrame(ShadowFrame* shadow_frame) SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) { in VisitShadowFrame() argument
2056 mirror::ArtMethod** method_addr = shadow_frame->GetMethodAddress(); in VisitShadowFrame()
2060 size_t num_regs = shadow_frame->NumberOfVRegs(); in VisitShadowFrame()
2061 if (m->IsNative() || shadow_frame->HasReferenceArray()) { in VisitShadowFrame()
2064 mirror::Object* ref = shadow_frame->GetVRegReference(reg); in VisitShadowFrame()
2069 shadow_frame->SetVRegReference(reg, new_ref); in VisitShadowFrame()
2079 uint32_t dex_pc = shadow_frame->GetDexPC(); in VisitShadowFrame()
[all …]
Dreflection.cc179 void BuildArgArrayFromFrame(ShadowFrame* shadow_frame, uint32_t arg_offset) in BuildArgArrayFromFrame() argument
183 if (!shadow_frame->GetMethod()->IsStatic()) { in BuildArgArrayFromFrame()
184 Append(shadow_frame->GetVReg(cur_arg)); in BuildArgArrayFromFrame()
196 Append(shadow_frame->GetVReg(cur_arg)); in BuildArgArrayFromFrame()
201 AppendWide(shadow_frame->GetVRegLong(cur_arg)); in BuildArgArrayFromFrame()
503 void InvokeWithShadowFrame(Thread* self, ShadowFrame* shadow_frame, uint16_t arg_offset, in InvokeWithShadowFrame() argument
514 arg_array.BuildArgArrayFromFrame(shadow_frame, arg_offset); in InvokeWithShadowFrame()
515 shadow_frame->GetMethod()->Invoke(self, arg_array.GetArray(), arg_array.GetNumBytes(), result, in InvokeWithShadowFrame()
Dreflection.h66 void InvokeWithShadowFrame(Thread* self, ShadowFrame* shadow_frame, uint16_t arg_offset,
/art/runtime/entrypoints/portable/
Dportable_trampoline_entrypoints.cc203 …ShadowFrame* shadow_frame(ShadowFrame::Create(num_regs, NULL, // No last shadow coming from quick. in artPortableToInterpreterBridge() local
207 *shadow_frame, first_arg_reg); in artPortableToInterpreterBridge()
212 self->PushShadowFrame(shadow_frame); in artPortableToInterpreterBridge()
225 JValue result = interpreter::EnterInterpreterFromStub(self, mh, code_item, *shadow_frame); in artPortableToInterpreterBridge()
/art/runtime/arch/arm64/
Dentrypoints_init_arm64.cc29 ShadowFrame* shadow_frame, JValue* result);
32 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/arch/x86/
Dentrypoints_init_x86.cc29 ShadowFrame* shadow_frame, JValue* result);
32 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/arch/x86_64/
Dentrypoints_init_x86_64.cc30 ShadowFrame* shadow_frame, JValue* result);
33 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/mirror/
Dart_method.cc326 ShadowFrame* shadow_frame = self->GetAndClearDeoptimizationShadowFrame(result); in Invoke() local
328 self->SetTopOfShadowStack(shadow_frame); in Invoke()
329 interpreter::EnterInterpreterFromDeoptimize(self, shadow_frame, result); in Invoke()
Dart_method.h43 const DexFile::CodeItem* code_item, ShadowFrame* shadow_frame, JValue* result);
/art/runtime/arch/arm/
Dentrypoints_init_arm.cc30 ShadowFrame* shadow_frame, JValue* result);
33 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/arch/mips/
Dentrypoints_init_mips.cc31 ShadowFrame* shadow_frame, JValue* result);
34 ShadowFrame* shadow_frame, JValue* result);
/art/runtime/entrypoints/quick/
Dquick_trampoline_entrypoints.cc505 ShadowFrame* shadow_frame(ShadowFrame::Create(num_regs, nullptr, method, 0, memory)); in artQuickToInterpreterBridge() local
510 shadow_frame, first_arg_reg); in artQuickToInterpreterBridge()
515 self->PushShadowFrame(shadow_frame); in artQuickToInterpreterBridge()
531 JValue result = interpreter::EnterInterpreterFromStub(self, mh, code_item, *shadow_frame); in artQuickToInterpreterBridge()