Lines Matching refs:regs
37 rt_inline void arm_get_current_stackframe(struct pt_regs *regs, struct stackframe *frame) in arm_get_current_stackframe() argument
39 frame->fp = frame_pointer(regs); in arm_get_current_stackframe()
40 frame->sp = regs->ARM_sp; in arm_get_current_stackframe()
41 frame->lr = regs->ARM_lr; in arm_get_current_stackframe()
42 frame->pc = regs->ARM_pc; in arm_get_current_stackframe()
58 enum regs enum
483 void unwind_backtrace(struct pt_regs *regs, const struct unwind_idx exidx_start[], const struct unw… in unwind_backtrace() argument
488 LOG_D("%s(regs = %x)", __func__, regs); in unwind_backtrace()
490 arm_get_current_stackframe(regs, &frame); in unwind_backtrace()
516 void rt_unwind(struct rt_hw_exp_stack *regs, unsigned int pc_adj) in rt_unwind() argument
520 e_regs.ARM_fp = regs->fp; in rt_unwind()
521 e_regs.ARM_sp = regs->sp; in rt_unwind()
522 e_regs.ARM_lr = regs->lr; in rt_unwind()
523 e_regs.ARM_pc = regs->pc - pc_adj; in rt_unwind()
527 e_regs.ARM_pc = regs->lr - sizeof(void *); in rt_unwind()
536 struct rt_hw_exp_stack regs; in rt_backtrace() local
538 __asm volatile ("mov %0, fp":"=r"(regs.fp)); in rt_backtrace()
539 __asm volatile ("mov %0, sp":"=r"(regs.sp)); in rt_backtrace()
540 __asm volatile ("mov %0, lr":"=r"(regs.lr)); in rt_backtrace()
541 __asm volatile ("mov %0, pc":"=r"(regs.pc)); in rt_backtrace()
542 rt_unwind(®s, 8); in rt_backtrace()