Changeset View
Changeset View
Standalone View
Standalone View
sys/arm64/arm64/machdep.c
Show First 20 Lines • Show All 483 Lines • ▼ Show 20 Lines | set_regs32(struct thread *td, struct reg32 *regs) | ||||
tf->tf_x[13] = regs->r_sp; | tf->tf_x[13] = regs->r_sp; | ||||
tf->tf_x[14] = regs->r_lr; | tf->tf_x[14] = regs->r_lr; | ||||
tf->tf_elr = regs->r_pc; | tf->tf_elr = regs->r_pc; | ||||
tf->tf_spsr = regs->r_cpsr; | tf->tf_spsr = regs->r_cpsr; | ||||
return (0); | return (0); | ||||
} | } | ||||
/* XXX fill/set dbregs/fpregs are stubbed on 32-bit arm. */ | |||||
int | int | ||||
fill_fpregs32(struct thread *td, struct fpreg32 *regs) | fill_fpregs32(struct thread *td, struct fpreg32 *regs) | ||||
{ | { | ||||
printf("ARM64TODO: fill_fpregs32"); | memset(regs, 0, sizeof(*regs)); | ||||
return (EDOOFUS); | return (0); | ||||
} | } | ||||
int | int | ||||
set_fpregs32(struct thread *td, struct fpreg32 *regs) | set_fpregs32(struct thread *td, struct fpreg32 *regs) | ||||
{ | { | ||||
printf("ARM64TODO: set_fpregs32"); | return (0); | ||||
return (EDOOFUS); | |||||
} | } | ||||
int | int | ||||
fill_dbregs32(struct thread *td, struct dbreg32 *regs) | fill_dbregs32(struct thread *td, struct dbreg32 *regs) | ||||
{ | { | ||||
printf("ARM64TODO: fill_dbregs32"); | memset(regs, 0, sizeof(*regs)); | ||||
return (EDOOFUS); | return (0); | ||||
} | } | ||||
int | int | ||||
set_dbregs32(struct thread *td, struct dbreg32 *regs) | set_dbregs32(struct thread *td, struct dbreg32 *regs) | ||||
{ | { | ||||
printf("ARM64TODO: set_dbregs32"); | return (0); | ||||
return (EDOOFUS); | |||||
} | } | ||||
#endif | #endif | ||||
int | int | ||||
ptrace_set_pc(struct thread *td, u_long addr) | ptrace_set_pc(struct thread *td, u_long addr) | ||||
{ | { | ||||
td->td_frame->tf_elr = addr; | td->td_frame->tf_elr = addr; | ||||
▲ Show 20 Lines • Show All 944 Lines • Show Last 20 Lines |