Lines Matching refs:rp

198 fasttrap_anarg(struct regs *rp, int argno)  in fasttrap_anarg()  argument
203 return ((&rp->r_o0)[argno]); in fasttrap_anarg()
206 struct frame *fr = (struct frame *)(rp->r_sp + STACK_BIAS); in fasttrap_anarg()
213 struct frame32 *fr = (struct frame32 *)rp->r_sp; in fasttrap_anarg()
228 fasttrap_usdt_args(fasttrap_probe_t *probe, struct regs *rp, in fasttrap_usdt_args() argument
245 struct frame *fr = (struct frame *)(rp->r_sp + STACK_BIAS); in fasttrap_usdt_args()
252 argv[i] = fasttrap_getreg(rp, R_O0 + x + inc); in fasttrap_usdt_args()
258 struct frame32 *fr = (struct frame32 *)rp->r_sp; in fasttrap_usdt_args()
265 argv[i] = fasttrap_getreg(rp, R_O0 + x + inc); in fasttrap_usdt_args()
277 fasttrap_return_common(struct regs *rp, uintptr_t pc, pid_t pid, in fasttrap_return_common() argument
313 fasttrap_usdt_args(probe, rp, fake_restore, in fasttrap_return_common()
326 fasttrap_usdt_args(probe, rp, fake_restore, in fasttrap_return_common()
333 uintptr_t arg0 = fasttrap_getreg(rp, R_I0); in fasttrap_return_common()
334 uintptr_t arg1 = fasttrap_getreg(rp, R_I1); in fasttrap_return_common()
335 uintptr_t arg2 = fasttrap_getreg(rp, R_I2); in fasttrap_return_common()
336 uintptr_t arg3 = fasttrap_getreg(rp, R_I3); in fasttrap_return_common()
337 uintptr_t arg4 = fasttrap_getreg(rp, R_I4); in fasttrap_return_common()
347 dtrace_probe(probe->ftp_id, rp->r_o0, rp->r_o1, in fasttrap_return_common()
348 rp->r_o2, rp->r_o3, rp->r_o4); in fasttrap_return_common()
364 rp->r_npc - probe->ftp_faddr < probe->ftp_fsize) in fasttrap_return_common()
378 if (rp->r_npc == rp->r_pc + 4 && in fasttrap_return_common()
379 rp->r_npc - probe->ftp_faddr < probe->ftp_fsize) in fasttrap_return_common()
392 rp->r_o0, rp->r_o1, rp->r_o2, rp->r_o3); in fasttrap_return_common()
394 uintptr_t arg0 = fasttrap_getreg(rp, R_I0); in fasttrap_return_common()
395 uintptr_t arg1 = fasttrap_getreg(rp, R_I1); in fasttrap_return_common()
396 uintptr_t arg2 = fasttrap_getreg(rp, R_I2); in fasttrap_return_common()
397 uintptr_t arg3 = fasttrap_getreg(rp, R_I3); in fasttrap_return_common()
412 fasttrap_pid_probe(struct regs *rp) in fasttrap_pid_probe() argument
418 uintptr_t pc = rp->r_pc; in fasttrap_pid_probe()
419 uintptr_t npc = rp->r_npc; in fasttrap_pid_probe()
497 dtrace_probe(probe->ftp_id, rp->r_o0, rp->r_o1, rp->r_o2, in fasttrap_pid_probe()
498 rp->r_o3, rp->r_o4); in fasttrap_pid_probe()
526 rp->r_o0 = 1; in fasttrap_pid_probe()
527 pc = rp->r_npc; in fasttrap_pid_probe()
559 rp->r_g1 = rp->r_sp + imm; in fasttrap_pid_probe()
560 pc = rp->r_g7 + FASTTRAP_OFF_SAVE; in fasttrap_pid_probe()
592 value = fasttrap_getreg(rp, RS1(tp->ftt_instr)) + imm; in fasttrap_pid_probe()
594 value = fasttrap_getreg(rp, RS1(tp->ftt_instr)) + in fasttrap_pid_probe()
595 fasttrap_getreg(rp, RS2(tp->ftt_instr)); in fasttrap_pid_probe()
602 fasttrap_putreg(rp, ((rd & 0x18) == 0x8) ? rd + 16 : rd, value); in fasttrap_pid_probe()
604 pc = rp->r_g7 + FASTTRAP_OFF_RESTORE; in fasttrap_pid_probe()
629 target = fasttrap_getreg(rp, RS1(tp->ftt_instr)) + imm; in fasttrap_pid_probe()
631 target = fasttrap_getreg(rp, RS1(tp->ftt_instr)) + in fasttrap_pid_probe()
632 fasttrap_getreg(rp, RS2(tp->ftt_instr)); in fasttrap_pid_probe()
635 fasttrap_putreg(rp, R_O0, target); in fasttrap_pid_probe()
637 pc = rp->r_g7 + FASTTRAP_OFF_RETURN; in fasttrap_pid_probe()
651 value = fasttrap_getreg(rp, RS1(tp->ftt_instr)) | imm; in fasttrap_pid_probe()
653 value = fasttrap_getreg(rp, RS1(tp->ftt_instr)) | in fasttrap_pid_probe()
654 fasttrap_getreg(rp, RS2(tp->ftt_instr)); in fasttrap_pid_probe()
657 fasttrap_putreg(rp, RD(tp->ftt_instr), value); in fasttrap_pid_probe()
658 pc = rp->r_npc; in fasttrap_pid_probe()
666 fasttrap_putreg(rp, RD(tp->ftt_instr), (ulong_t)imm32); in fasttrap_pid_probe()
668 pc = rp->r_npc; in fasttrap_pid_probe()
675 uint_t ccr = rp->r_tstate >> TSTATE_CCR_SHIFT; in fasttrap_pid_probe()
726 pc = rp->r_npc; in fasttrap_pid_probe()
733 pc = rp->r_npc + 4; in fasttrap_pid_probe()
736 pc = rp->r_npc; in fasttrap_pid_probe()
800 pc = rp->r_npc; in fasttrap_pid_probe()
807 pc = rp->r_npc + 4; in fasttrap_pid_probe()
810 pc = rp->r_npc; in fasttrap_pid_probe()
831 value = (int64_t)fasttrap_getreg(rp, reg); in fasttrap_pid_probe()
853 pc = rp->r_npc; in fasttrap_pid_probe()
860 pc = rp->r_npc + 4; in fasttrap_pid_probe()
863 pc = rp->r_npc; in fasttrap_pid_probe()
882 pc = rp->r_npc; in fasttrap_pid_probe()
888 fasttrap_putreg(rp, RD(tp->ftt_instr), rp->r_pc); in fasttrap_pid_probe()
889 pc = rp->r_npc; in fasttrap_pid_probe()
897 rp->r_o7 = rp->r_pc; in fasttrap_pid_probe()
898 pc = rp->r_npc; in fasttrap_pid_probe()
903 pc = rp->r_npc; in fasttrap_pid_probe()
911 npc = fasttrap_getreg(rp, rs1) + imm; in fasttrap_pid_probe()
916 npc = fasttrap_getreg(rp, rs1) + in fasttrap_pid_probe()
917 fasttrap_getreg(rp, rs2); in fasttrap_pid_probe()
923 fasttrap_putreg(rp, RD(tp->ftt_instr), rp->r_pc); in fasttrap_pid_probe()
929 curthread->t_dtrace_scrpc = rp->r_g7; in fasttrap_pid_probe()
930 curthread->t_dtrace_astpc = rp->r_g7 + FASTTRAP_OFF_FTRET; in fasttrap_pid_probe()
945 if (dtrace_blksuword32(rp->r_g7, &tp->ftt_instr, 1) == -1) { in fasttrap_pid_probe()
978 ASSERT(pc != rp->r_g7 + 4); in fasttrap_pid_probe()
979 ASSERT(pc != rp->r_g7 + 8); in fasttrap_pid_probe()
997 fasttrap_return_common(rp, orig_pc, pid, fake_restore); in fasttrap_pid_probe()
1001 ASSERT(curthread->t_dtrace_scrpc == rp->r_g7); in fasttrap_pid_probe()
1007 rp->r_pc = pc; in fasttrap_pid_probe()
1008 rp->r_npc = npc; in fasttrap_pid_probe()
1014 fasttrap_return_probe(struct regs *rp) in fasttrap_return_probe() argument
1043 rp->r_pc = pc; in fasttrap_return_probe()
1044 rp->r_npc = npc; in fasttrap_return_probe()
1047 fasttrap_return_common(rp, pc, pid, 0); in fasttrap_return_probe()
1384 fasttrap_getreg(struct regs *rp, uint_t reg) in fasttrap_getreg() argument
1400 return ((&rp->r_g1)[reg - 1]); in fasttrap_getreg()
1423 mpcb = (struct machpcb *)((caddr_t)rp - REGOFF); in fasttrap_getreg()
1426 struct frame *fr = (struct frame *)(rp->r_sp + STACK_BIAS); in fasttrap_getreg()
1433 if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) in fasttrap_getreg()
1445 (struct frame32 *)(uintptr_t)(caddr32_t)rp->r_sp; in fasttrap_getreg()
1453 if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) in fasttrap_getreg()
1484 fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) in fasttrap_putreg() argument
1494 (&rp->r_g1)[reg - 1] = value; in fasttrap_putreg()
1522 mpcb = (struct machpcb *)((caddr_t)rp - REGOFF); in fasttrap_putreg()
1525 struct frame *fr = (struct frame *)(rp->r_sp + STACK_BIAS); in fasttrap_putreg()
1533 if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) in fasttrap_putreg()
1548 mpcb->mpcb_spbuf[mpcb->mpcb_wbcnt] = (caddr_t)rp->r_sp; in fasttrap_putreg()
1555 (struct frame32 *)(uintptr_t)(caddr32_t)rp->r_sp; in fasttrap_putreg()
1564 if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) in fasttrap_putreg()
1579 mpcb->mpcb_spbuf[mpcb->mpcb_wbcnt] = (caddr_t)rp->r_sp; in fasttrap_putreg()