6#if defined(TARGET_ARCH_RISCV32) || defined(TARGET_ARCH_RISCV64)
22void CodeBreakpoint::PatchCode() {
25 switch (breakpoint_kind_) {
26 case UntaggedPcDescriptors::kIcCall: {
30 StubCode::ICCallBreakpoint());
33 case UntaggedPcDescriptors::kUnoptStaticCall: {
36 pc_,
code, StubCode::UnoptStaticCallBreakpoint());
39 case UntaggedPcDescriptors::kRuntimeCall: {
42 StubCode::RuntimeCallBreakpoint());
50void CodeBreakpoint::RestoreCode() {
53 switch (breakpoint_kind_) {
54 case UntaggedPcDescriptors::kIcCall: {
61 case UntaggedPcDescriptors::kUnoptStaticCall:
62 case UntaggedPcDescriptors::kRuntimeCall: {
CodePtr OrigStubAddress() const
static void PatchInstanceCallAt(uword return_address, const Code &caller_code, const Object &data, const Code &target)
static void PatchPoolPointerCallAt(uword return_address, const Code &code, const Code &new_target)
static CodePtr GetStaticCallTargetAt(uword return_address, const Code &code)
static CodePtr GetInstanceCallAt(uword return_address, const Code &caller_code, Object *data)
static int8_t data[kExtLength]