/ark/runtime_core/runtime/entrypoints/ |
D | entrypoints.cpp | 89 extern "C" NO_ADDRESS_SANITIZE void InterpreterEntryPoint(Method *method, Frame *frame) in InterpreterEntryPoint() 103 Frame *prev_frame = thread->GetCurrentFrame(); in InterpreterEntryPoint() 117 extern "C" Frame *CreateFrame(uint32_t nregs, Method *method, Frame *prev) in CreateFrame() 119 …Frame *mem = Thread::GetCurrent()->GetVM()->GetHeapManager()->AllocateFrame(panda::Frame::GetSize(… in CreateFrame() 124 return (new (mem) panda::Frame(method, prev, nregs)); in CreateFrame() 127 extern "C" Frame *CreateFrameForMethod(Method *method, Frame *prev) in CreateFrameForMethod() 133 extern "C" Frame *CreateFrameWithActualArgsAndSize(uint32_t size, uint32_t nregs, uint32_t num_actu… in CreateFrameWithActualArgsAndSize() 134 Method *method, Frame *prev) in CreateFrameWithActualArgsAndSize() 137 …static_cast<Frame *>(ManagedThread::GetCurrent()->GetStackFrameAllocator()->Alloc(panda::Frame::Ge… in CreateFrameWithActualArgsAndSize() 142 return (new (mem) panda::Frame(method, prev, nregs, num_actual_args)); in CreateFrameWithActualArgsAndSize() [all …]
|
D | entrypoints.h | 23 class Frame; variable 25 extern "C" Frame *CreateFrame(uint32_t nregs, Method *method, Frame *prev); 26 extern "C" Frame *CreateFrameWithActualArgs(uint32_t nregs, uint32_t num_actual_args, Method *metho… 27 extern "C" Frame *CreateFrameWithActualArgsAndSize(uint32_t size, uint32_t nregs, uint32_t num_actu… 28 Method *method, Frame *prev); 29 extern "C" void FreeFrame(Frame *frame);
|
/ark/runtime_core/runtime/interpreter/ |
D | frame.h | 34 class Frame { 108 ALWAYS_INLINE inline Frame(Method *method, Frame *prev, uint32_t nregs) in Frame() function 119 … ALWAYS_INLINE inline Frame(Method *method, Frame *prev, uint32_t nregs, uint32_t num_actual_args) in Frame() function 168 ALWAYS_INLINE inline void SetPrevFrame(Frame *prev) in SetPrevFrame() 173 ALWAYS_INLINE inline Frame *GetPrevFrame() const in GetPrevFrame() 220 …return AlignUp(sizeof(Frame) + sizeof(VRegister) * nregs, GetAlignmentInBytes(DEFAULT_FRAME_ALIGNM… in GetSize() 305 return MEMBER_OFFSET(Frame, method_); in GetMethodOffset() 310 return MEMBER_OFFSET(Frame, prev_); in GetPrevFrameOffset() 315 return MEMBER_OFFSET(Frame, nregs_); in GetNumVregsOffset() 320 return MEMBER_OFFSET(Frame, vregs_); in GetVregsOffset() [all …]
|
D | state.h | 31 ALWAYS_INLINE inline StateIface(Frame *frame) : acc_(frame->GetAcc()) {} in StateIface() 43 ALWAYS_INLINE inline Frame *GetFrame() const in GetFrame() 48 ALWAYS_INLINE inline void SetFrame(Frame *frame) in SetFrame() 91 …ALWAYS_INLINE inline State(ManagedThread *thread, const uint8_t *pc, Frame *frame) : StateIface(fr… in State() 101 ALWAYS_INLINE inline void UpdateState(const uint8_t *pc, Frame *frame) in UpdateState() 117 ALWAYS_INLINE inline Frame *GetFrame() const in GetFrame() 122 ALWAYS_INLINE inline void SetFrame(Frame *frame) in SetFrame() 165 Frame *frame_spill_ {nullptr}; 167 Frame::VRegister acc_spill_; 174 …ALWAYS_INLINE inline State(ManagedThread *thread, const uint8_t *pc, Frame *frame) : StateIface(fr… in State() [all …]
|
D | acc_vregister.h | 34 ALWAYS_INLINE inline AccVRegister(const Frame::VRegister &other) in AccVRegister() 43 ALWAYS_INLINE inline operator panda::Frame::VRegister() const in VRegister() 45 return Frame::VRegister(GetValue(), GetTag()); in VRegister() 71 using AccVRegister = Frame::VRegister;
|
D | runtime_interface.h | 145 static void SetCurrentFrame(ManagedThread *thread, Frame *frame) in SetCurrentFrame() 232 static Frame *CreateFrame(size_t nregs, Method *method, Frame *prev) in CreateFrame() 237 …static Frame *CreateFrameWithActualArgs(uint32_t nregs, uint32_t num_actual_args, Method *method, … in CreateFrameWithActualArgs() 242 …static Frame *CreateFrameWithActualArgs(uint32_t size, uint32_t nregs, uint32_t num_actual_args, M… in CreateFrameWithActualArgs() 243 Frame *prev) in CreateFrameWithActualArgs() 248 static void FreeFrame(Frame *frame) in FreeFrame()
|
D | instruction_handler_state.h | 26 ALWAYS_INLINE InstructionHandlerState(ManagedThread *thread, const uint8_t *pc, Frame *frame) in InstructionHandlerState() 35 ALWAYS_INLINE void UpdateInstructionHandlerState(const uint8_t *pc, Frame *frame) in UpdateInstructionHandlerState() 56 ALWAYS_INLINE Frame *GetFrame() const in GetFrame() 61 ALWAYS_INLINE void SetFrame(Frame *frame) in SetFrame()
|
D | interpreter.cpp | 28 void Execute(ManagedThread *thread, const uint8_t *pc, Frame *frame, bool jump_to_eh) in Execute() 37 ALWAYS_INLINE inline const uint8_t *Frame::GetInstrOffset() in GetInstrOffset()
|
D | vregister_iterator.h | 24 …explicit VRegisterIterator(BytecodeInstruction insn, Frame *frame) : instn_(std::move(insn)), fram… in VRegisterIterator() 79 Frame *frame_;
|
D | instruction_handler_base.h | 95 Frame::VRegister result; // empty result, because forced exit in InstrumentForceReturn() 117 ALWAYS_INLINE Frame *GetFrame() const in GetFrame() 122 ALWAYS_INLINE void SetFrame(Frame *frame) in SetFrame()
|
D | interpreter.h | 26 void Execute(ManagedThread *thread, const uint8_t *pc, Frame *frame, bool jump_to_eh = false);
|
/ark/runtime_core/runtime/bridge/ |
D | bridge.h | 24 class Frame; variable 44 extern "C" void InterpreterToCompiledCodeBridge(const uint8_t *, const Frame *, const Method *, Man… 45 extern "C" void InterpreterToCompiledCodeBridgeDyn(const uint8_t *, const Frame *, const Method *, … 46 extern "C" DecodedTaggedValue InvokeCompiledCodeWithArgArray(const int64_t *, const Frame *, const … 48 … "C" DecodedTaggedValue InvokeCompiledCodeWithArgArrayDyn(const int64_t *, uint32_t, const Frame *, 51 extern "C" int64_t InvokeInterpreter(ManagedThread *thread, const uint8_t *pc, Frame *frame, Frame …
|
D | bridge.cpp | 53 extern "C" int64_t InvokeInterpreter(ManagedThread *thread, const uint8_t *pc, Frame *frame, Frame … in InvokeInterpreter()
|
/ark/runtime_core/runtime/tests/ |
D | frame_test.cpp | 25 Frame *CreateFrame(size_t nregs, Method *method, Frame *prev) in CreateFrame() 27 Frame *mem = static_cast<Frame *>(aligned_alloc(8U, panda::Frame::GetSize(nregs))); in CreateFrame() 28 return (new (mem) panda::Frame(method, prev, nregs)); in CreateFrame() 31 void FreeFrame(Frame *f) in FreeFrame() 36 TEST(Frame, Test) in TEST() argument 38 Frame *f = panda::test::CreateFrame(2, nullptr, nullptr); in TEST()
|
D | debugger_test.cpp | 61 static Frame *CreateFrame(size_t nregs, Method *method, Frame *prev) in CreateFrame() 63 panda::Frame *mem = static_cast<Frame *>(aligned_alloc(8U, panda::Frame::GetSize(nregs))); in CreateFrame() 64 return (new (mem) panda::Frame(method, prev, nregs)); in CreateFrame() 67 static void FreeFrame(Frame *frame) in FreeFrame() 72 TEST_F(DebuggerTest, Frame) in TEST_F() argument 112 panda::Frame *frame = test::CreateFrame(nregs + nargs, &method, nullptr); in TEST_F()
|
D | i2c_bridge_test.cpp | 126 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 155 Frame *frame = CreateFrame(1, nullptr, nullptr); in TEST_F() 188 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 224 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 260 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 289 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 318 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 347 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 376 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() 405 Frame *frame = CreateFrame(0, nullptr, nullptr); in TEST_F() [all …]
|
/ark/runtime_core/runtime/include/ |
D | stack_walker.h | 47 static_assert((BoundaryFrame<FrameKind::INTERPRETER>::METHOD_OFFSET) * sizeof(uintptr_t) == Frame::… 48 static_assert((BoundaryFrame<FrameKind::INTERPRETER>::FP_OFFSET) * sizeof(uintptr_t) == Frame::GetP… 61 using FrameVariant = std::variant<Frame *, CFrame>; 87 Frame *GetIFrame() 89 return std::get<Frame *>(frame_); 92 const Frame *GetIFrame() const 94 return std::get<Frame *>(frame_); 112 using FrameVariant = std::variant<Frame *, CFrame>; 187 Frame::VRegister GetVRegValue(size_t vreg_num); 204 Frame *GetIFrame() [all …]
|
D | method-inl.h | 40 Frame *current_frame = thread->GetCurrentFrame(); in InvokeCompiledCode() 98 Frame *current_frame = thread->GetCurrentFrame(); in InvokeInterpretedCode() 111 PandaUniquePtr<Frame, FrameDeleter> frame = in InvokeInterpretedCode() 137 frame->SetPrevFrame(reinterpret_cast<Frame *>(&bridge.v_[1])); in InvokeInterpretedCode() 165 PandaUniquePtr<Frame, FrameDeleter> Method::InitFrame(ManagedThread *thread, uint32_t num_actual_ar… in InitFrame() 166 Frame *current_frame, void *data) in InitFrame() 182 auto frame_deleter = [](Frame *frame) { FreeFrame(frame); }; in InitFrame() 183 PandaUniquePtr<Frame, FrameDeleter> frame( in InitFrame()
|
/ark/runtime_core/runtime/asm_defines/ |
D | asm_defines.def | 22 DEFINE_VALUE(FRAME_METHOD_OFFSET, Frame::GetMethodOffset()) 23 DEFINE_VALUE(FRAME_PREV_FRAME_OFFSET, Frame::GetPrevFrameOffset()) 24 DEFINE_VALUE(FRAME_NUM_VREGS_OFFSET, Frame::GetNumVregsOffset()) 25 DEFINE_VALUE(FRAME_ACC_OFFSET, Frame::GetAccOffset()) 27 DEFINE_VALUE(FRAME_VREGS_OFFSET, Frame::GetVregsOffset()) 28 DEFINE_VALUE(FRAME_VREGISTER_SIZE, sizeof(Frame::VRegister)) 29 DEFINE_VALUE(FRAME_VREGISTER_VALUE_OFFSET, Frame::VRegister::GetValueOffset()) 30 DEFINE_VALUE(FRAME_VREGISTER_TAG_OFFSET, Frame::VRegister::GetTagOffset()) 31 …ER_OBJECT_TAG, 1) DEFINE_VALUE(FRAME_SLOT_OFFSET, panda::Frame::GetVregsOffset() + Frame::VReg… 32 DEFINE_VALUE(FRAME_TAG_OFFSET, panda::Frame::GetVregsOffset() + panda::Frame::VRegister::GetTagOffs…
|
/ark/runtime_core/runtime/tests/interpreter/ |
D | test_runtime_interface.h | 196 static void SetCurrentFrame([[maybe_unused]] ManagedThread *thread, Frame *frame) in SetCurrentFrame() 365 static Frame *CreateFrame(size_t nregs, Method *method, Frame *prev) in CreateFrame() 368 Frame *mem = static_cast<Frame *>( in CreateFrame() 369 …allocator->Allocate(panda::Frame::GetSize(nregs), GetLogAlignment(8U), ManagedThread::GetCurrent()… in CreateFrame() 370 return (new (mem) panda::Frame(method, prev, nregs)); in CreateFrame() 373 …static Frame *CreateFrameWithActualArgs(size_t nregs, size_t num_actual_args, Method *method, Fram… in CreateFrameWithActualArgs() 378 …static Frame *CreateFrameWithActualArgs(size_t size, size_t nregs, size_t num_actual_args, Method … in CreateFrameWithActualArgs() 379 Frame *prev) in CreateFrameWithActualArgs() 382 Frame *mem = static_cast<Frame *>( in CreateFrameWithActualArgs() 383 …allocator->Allocate(panda::Frame::GetSize(size), GetLogAlignment(8U), ManagedThread::GetCurrent())… in CreateFrameWithActualArgs() [all …]
|
/ark/runtime_core/runtime/interpreter/arch/aarch64/ |
D | global_regs.h | 22 class Frame; variable 35 register Frame *g_frame asm("x23"); 69 ALWAYS_INLINE inline Frame *GetFrame() in GetFrame() 74 ALWAYS_INLINE inline void SetFrame(Frame *frame) in SetFrame()
|
/ark/runtime_core/runtime/arch/ |
D | asm_support.cpp | 52 extern "C" void OsrEntryAfterCFrame([[maybe_unused]] Frame *frame, [[maybe_unused]] uintptr_t loop_… in OsrEntryAfterCFrame() 57 extern "C" void OsrEntryAfterIFrame([[maybe_unused]] Frame *frame, [[maybe_unused]] uintptr_t loop_… in OsrEntryAfterIFrame() 62 extern "C" void OsrEntryTopFrame([[maybe_unused]] Frame *frame, [[maybe_unused]] uintptr_t loop_hea… in OsrEntryTopFrame()
|
/ark/runtime_core/runtime/ |
D | stack_walker.cpp | 55 return reinterpret_cast<Frame *>(ptr); in GetTopFrameFromFp() 85 StackWalker::CFrameType StackWalker::CreateCFrameForC2IBridge(Frame *frame) in CreateCFrameForC2IBridge() 144 Frame::VRegister StackWalker::GetVRegValue(size_t vreg_num) in GetVRegValue() 212 … auto prev_frame = reinterpret_cast<Frame *>(GetPrevFromBoundary<FrameKind::COMPILER>(prev)); in NextFromCFrame() 218 frame_ = reinterpret_cast<Frame *>(prev_frame); in NextFromCFrame() 222 … auto prev_frame = reinterpret_cast<Frame *>(GetPrevFromBoundary<FrameKind::COMPILER>(prev)); in NextFromCFrame() 261 frame_ = reinterpret_cast<Frame *>(prev); in NextFromIFrame() 278 … auto prev_frame = reinterpret_cast<Frame *>(GetPrevFromBoundary<FrameKind::COMPILER>(prev)); in GetNextFrame() 285 … auto prev_frame = reinterpret_cast<Frame *>(GetPrevFromBoundary<FrameKind::COMPILER>(prev)); in GetNextFrame() 309 return FrameAccessor(reinterpret_cast<Frame *>(prev)); in GetNextFrame() [all …]
|
/ark/runtime_core/runtime/tooling/ |
D | pt_lang_ext_private.h | 29 …virtual std::optional<Error> GetPtValueFromManaged(const Frame::VRegister &vreg, PtValue *outValue… 31 …virtual std::optional<Error> StorePtValueFromManaged(const PtValue &value, Frame::VRegister *inOut…
|
D | debugger.cpp | 108 static panda::Frame *GetPandaFrame(ManagedThread *thread, uint32_t frameDepth = 0, bool *outIsNativ… in GetPandaFrame() 118 panda::Frame *frame = nullptr; in GetPandaFrame() 134 Expected<panda::Frame::VRegister *, Error> Debugger::GetVRegByPtThread(PtThread thread, uint32_t fr… in GetVRegByPtThread() 144 panda::Frame *frame = GetPandaFrame(mt_managed_thread, frameDepth, &isNative); in GetVRegByPtThread() 183 Frame::VRegister *reg = ret.Value(); in GetVariable() 197 Frame::VRegister *reg = ret.Value(); in SetVariable() 213 Frame *interpreterFrame = nullptr; in GetCurrentFrame() 233 Frame *frame = stack.IsCFrame() ? nullptr : stack.GetIFrame(); in EnumerateFrames() 294 panda::Frame *popFrame = nullptr; in RestartFrame() 295 panda::Frame *retryFrame = nullptr; in RestartFrame() [all …]
|